UNIX によるコーパスデータの処理 (7)
2009年 4月 7日 火曜日 筆者: 阪上 辰也学習者コーパス入門 第23回
今回は、「sort コマンド」を紹介します。
Microsoft Excel などの表計算ソフトを使っている時に、数字や文字をある条件で並べ替えることがありますが、その並び替えを行うのが、sort コマンドの機能です。
コーパス処理では、ある語句の出現頻度順に並び替えるケース、また、単語をアルファベット順に並び替えるケースにおいて、sort コマンドを利用することになります。今回は、2つのオプションも交えて、sort コマンドの使い方を説明します。
まず、第13回と第14回の記事で紹介したように、1行1単語になっているファイルを準備します(当該記事にならい、ファイル名は「nice_all.txt」とします)。そのファイルに対する処理として、以下のようなコマンドを入力し実行します。
sort nice_all.txt [Enter キーを押す]
何もオプションを指定しない状態で sort コマンドを実行した場合、文字列の順序で並び替えが行われます。引用符などの記号類、数字、アルファベットの順で並び替えが行われます。例えば、引用符付きの「”NICE”」、引用符のない「nice」、数字の「1」という3種類の文字列があった場合、オプションなしの状態で sort コマンドを実行すると、「”NICE”, 1, nice」の順で並び替えられることになります。
続けて、「f オプション」をつけて実行してみましょう。
sort -f nice_all.txt [Enter キーを押す]
この「f オプション」により、大文字と小文字を「区別せず」に並び替えることができます。例えば、「NICE」、「Nice」、「nice」の3種類の文字列があった場合、これらは、並び替えの際に同じ文字列として並び替えられることになります。ちなみに、前回の記事で紹介した tr コマンドによって、事前に文字列を小文字に変換してしまうという手もあります(ただし、固有名詞としての NICE と形容詞の nice は区別する必要があります)。
次に、「r オプション」をつけて実行してみましょう。
sort -f nice_all.txt [Enter キーを押す]
この「r オプション」を用いると、逆順に並び替えることができます。アルファベットであれば、z から順に並び替えられることになります。このオプションと、後に紹介します「n オプション」を組み合わせることで、単語の出現頻度の並び替えができるようになります。
次回は、重複した行をまとめる「uniq」コマンドを紹介します。
▼お知らせ
2008年10月4日に、学習者コーパス「NICE」の正式版を公開しました。無償で利用可能で、特別な手続きは必要ありませんので、ぜひ研究調査にご利用ください。詳しくは、こちらのサイトをご覧ください。
—
■筆者プロフィール
阪上辰也(さかうえ・たつや)
名古屋大学大学院 国際開発研究科 特任助教。
専門は、コンピュータを利用した外国語教育。
ウェブサイトは、sakauetatsuya.net。
—
※編集部注
当サイト上ではいわゆる全角の引用符が表示されますが、実際の作業ではいずれもいわゆる半角の引用符を入力します。
UNIX によるコーパスデータの処理 (6)
2009年 3月 24日 火曜日 筆者: 阪上 辰也学習者コーパス入門 第22回
今回は、新たなコマンドとして「tr コマンド」を紹介します。
これまでに見てきた「grepコマンド」は、検索文字列を含んだ行を抽出するもので、各種オプションを加えることで、複雑でかつ効率的な検索ができることを見てきました。今回取り上げる tr コマンドは、検索文字列の抽出ではなく、文字列の「置換」を行うコマンドです。コーパス処理においては、よく行う置換作業が2つあります。1つは、大文字から小文字への置換、もう1つは空白類の置換です。
まずは、大文字から小文字への置換について見てみましょう。コンピュータは、大文字と小文字で表示されるものを区別して扱う場合があります。例えば、「apple」と「Apple」の場合、片方は大文字を含んでいるため、別の文字列として扱われることになります。もし、コーパス中に含まれる「apple」という単語の頻度を求める際に、大文字を小文字に置換しておかなければ、正確な頻度を求めることができなくなってしまいます。そこで、以下のようなコマンドを実行し、大文字のアルファベットを小文字に置換します。
tr ‘[A-Z]’ ‘[a-z]’ < JPN001.txt [Enter キーを押す](※)
この tr コマンドでは、「何を」置換するかを指定し、その後で「何に」置換するかを指定します。コマンドがうまく実行されていれば、すべての大文字が小文字になって出力されているはずです。上記のコマンドの場合、大文字のアルファベットがあれば([A-Z] と入力することで、A から最後の Z までを指定したことになり、すべての大文字のアルファベットを入力する必要はありません)、対応する小文字に置換せよ(つまり、A なら a に、B なら b に置換する)という処理が行われることになります。それでは、この出力結果を保存しておきましょう。
データの保存には、コマンドの後に「>」を入力し、その後に保存するファイル名(以下の例では、komoji_001.txt)を入力します。なお、「<」の後には、処理するために読み込むファイルの名前を指定します。
tr [A-Z] [a-z] < JPN001.txt > komoji_001.txt [Enter キーを押す](※)
保存されたファイルの内容を表示するには、「cat コマンド」を使用します。このコマンドについては、今後扱う予定ですが、今は、「ファイルの内容を表示するためのコマンド」であると覚えておいてください。「cat komoji_001.txt」と入力して実行すれば、komoji_001.txt のファイルの内容が表示され、大文字が小文字に置換されていることを確認してください。この処理ができていれば、大文字で書かれていた単語も、同じ単語として扱うことができるようになります。
次に、第13回の記事でも扱いましたが、スペースなどの空白類を改行文字に置換する処理について見てみましょう。この処理結果は、単語数を求めたり、語彙一覧表を作成したりするための下処理のあたるもので、よく行う処理です。以下のコマンドを実行し、半角スペースを改行文字(「\n」)に置換します。
tr ‘ ‘ ‘\n’ < JPN001.txt [Enter キーを押す](※)
うまくコマンドが実行されれば、一行につき一単語が表示されて出力されているはずです(本来なら、個人情報や話者記号など、不要な情報を含んでないテキストに対して上記のコマンドを実行する必要があります)。それでは、この出力結果を保存してみましょう。
tr ‘ ‘ ‘\n’ < JPN001.txt > tango_001.txt [Enter キーを押す](※)
ここでは、tango_001.txt という名前で保存していますので、内容を確認するには、「cat tango_001.txt」と入力して実行します。すると、一行につき一単語が表示されるように処理された結果を確認することができます。これを、NICE 全体のデータに対して実行し、今後紹介する数種類のコマンドを加えて実行すれば、一瞬で語彙頻度表を作成することが出来るようになります。
次回は、さらにまた新しいコマンドを紹介します。
—
▼お知らせ
2008年10月4日に、学習者コーパス「NICE」の正式版を公開しました。無償で利用可能で、特別な手続きは必要ありませんので、ぜひ研究調査にご利用ください。詳しくは、こちらのサイトをご覧ください。
—
■筆者プロフィール
阪上辰也(さかうえ・たつや)
名古屋大学大学院 国際開発研究科 特任助教。
専門は、コンピュータを利用した外国語教育。
ウェブサイトは、sakauetatsuya.net。
—
※編集部注
当サイト上ではいわゆる全角の引用符が表示されますが、実際の作業ではいずれもいわゆる半角の引用符を入力します。
UNIX によるコーパスデータの処理 (5)
2009年 3月 10日 火曜日 筆者: 阪上 辰也学習者コーパス入門 第21回
今回も、前々回と前回に引き続き、「grep」コマンドのオプションを利用した発展的な使い方を紹介します。
紹介している「grep」コマンドは、検索した文字列を含む行を表示させることが主な機能です。これまでに、行数をカウントする「c オプション」と、大文字と小文字を区別せずに検索できる「i オプション」、利用できる正規表現の種類を増やす「E オプション」の3つを紹介してきました。今回は、前回の2つのオプションの復習を交えながら、新たに2つのオプションを紹介します。
まずは、指定した条件に該当”しない”行を出力させる「v オプション」です。つまり、このオプションをつけることで、不要な行を取り除くことができるようになります。ここで、具体例として、NICE の学習者の書いた作文とその添削文だけを抽出するケースを見てましょう。
NICE の各データの冒頭部分には、書いた人に関する個人情報(属性)が含まれています。個人情報を記録した行頭には、それが記録されていることを示すために、「@」がつけられています。これらの個人情報の取り除いて、学習者の書いた作文とその添削文だけを出力させる(正確には、@で始まる行以外を出力させていることになります)には、以下のコマンドを実行することになります。
grep -v “@” *.txt [Enter キーを押す](※)
上記のコマンドを実行すれば、「@」を”含まない”行が出力されるはずです。しかし、このとき、コメント行の「%COM」という行が残っていますので、この行も取り除き、「*JPN」と「%NTV」の行だけが表示されるようにしましょう。この場合は、以下のコマンドを実行します。
grep -v “@” *.txt | grep -v “%COM” [Enter キーを押す](※)
grep コマンドを連続して実行するには、「パイプ」と呼ばれる縦棒の記号「|」を挿入し、続けて新たなコマンドを入力します。始めに入力したコマンドの実行結果が、その後に続くコマンドに引き継がれています。上記のコマンドでは、最初のコマンドで、「@」を含まない行が出力されており(このときは、まだ「%COM」を含む行は出力されています)、その出力結果を利用しながら、次のコマンドにより、「%COM」を含まない行が出力されることになります。結果として、「*JPN」と「%NTV」の行だけが表示されることになります。このように、「v オプション」を利用することで、複数の行を出力させることが可能になります。
今回2つめのコマンドは、「A オプション」です。grep コマンドは、基本的に、1行だけを出力することになりますが、A オプションを利用することで、複数行の出力が可能になります。早速、実例として、以下のコマンドを入力し、実行してください。
grep -A1 “*JPN” *.txt [Enter キーを押す](※)
実行すると、「*JPN」と「%NTV」の行が表示されることになります。「A オプション」とその後に任意の数字を指定することで、指定した行に加えて、指定した数字分の行を出力させることができます。この場合、Aの直後に1を指定していますから、「*JPN」を含む行プラス1行を出力させることになり、結果として、「%NTV」の行も同時に出力されることになります。
今回紹介した2つのオプションにより、結果的には、どちらのオプションでも、学習者の書いた作文(「*JPN」の行)とその添削文(「%NTV」の行)だけを出力させることができました。このことから、同じ結果を出すために、方法が1つに限られるわけではないことが分かります。これまでに紹介した grep コマンドの各種コマンドを振り返り、いろいろなデータ抽出方法を試してみてください。
今回で「grep」コマンドの話を終えて、次回からは、また新たなコマンドを紹介します。
—
▼お知らせ
2008年10月4日に、学習者コーパス「NICE」の正式版を公開しました。無償で利用可能で、特別な手続きは必要ありませんので、ぜひ研究調査にご利用ください。詳しくは、こちらのサイトをご覧ください。
—
■筆者プロフィール
阪上辰也(さかうえ・たつや)
名古屋大学大学院 国際開発研究科 特任助教。
専門は、コンピュータを利用した外国語教育。
ウェブサイトは、sakauetatsuya.net。
—
※編集部注
当サイト上ではいわゆる全角の引用符が表示されますが、実際の作業ではいずれもいわゆる半角の引用符を入力します。
UNIX によるコーパスデータの処理 (4)
2009年 2月 24日 火曜日 筆者: 阪上 辰也学習者コーパス入門 第20回
今回は、前回に引き続き、「grep」コマンドのオプションを利用した発展的な使い方を紹介します。
検索した文字列を含む行を表示させるのが、「grep」コマンドの機能でした。前回は、行数をカウントする「c オプション」と、大文字と小文字を区別せずに検索できる「i オプション」の2つを紹介しましたが、今回は、前回の2つのオプションの復習を交えながら、もう1つ新しいオプションを紹介します。
今回紹介するオプションは、多数の正規表現を利用可能にする「E オプション」です。単純に grep コマンドを実行しただけでは、複雑な正規表現を使うことができません。たとえば、動詞の go とその変化形(went と gone)をまとめて検索するというケースを考えてみましょう。正規表現としては、「\b(go|went|gone)\b」と指定することで、3つの表現をまとめてマッチさせることができます。なお、「\b」は、語の境界を示す正規表現です。この「\b」を入れておかないと、ago や good など、目的とは違う表現が混ざってしまいます。
これまでに使用してきたサクラエディタでは、この正規表現を指定するだけで、目的の表現にマッチさせることができますが、grep コマンドを実行する際には、これらの正規表現を入力するしてもマッチさせることはできません。正規表現が使えるようにするために使うのが、「E オプション」です。この E オプションを付けることで、使える正規表現の種類が「拡張」されますので、「Extend の E」と覚えておくとよいでしょう。
それでは、ターミナルを起動し、NICE の学習者の作文データがあるディレクトリ(フォルダ)へと移動した上で、以下のコマンドをターミナルの画面に入力します。なお、オプションは、コマンドと検索文字列の間に、ハイフン付けて入力します。
grep -E “\b(go|went|gone)\b” *.txt [Enter キーを押す](※)
結果として、コマンドを入力した次の行以降から、go とその変化形を含む行が表示されているはずです。試しに、E オプションをつけない状態で grep コマンドを実行しても、何も結果が表示されないということも確認してみてください。厳密には、一言で grep と言っても、複数の種類がありますので、利用しているシステムよって、使えるようになる正規表現は異なります。
ここで、前回の復習もかねて、複数のオプションを同時に指定してみましょう。go とその変化形を対象として、大文字と小文字を区別することなく検索した場合に、各ファイルにどれほどの頻度で出現するかを確かめてみます。それでは、i オプションと c オプションを同時に指定した以下のコマンドを入力してください。
grep -Eic “\b(go|went|gone)\b” *.txt [Enter キーを押す]
Enter キーを押すとすぐ、検索結果として、JPN001.txt:0、JPN002.txt:2、JPN003.txt:0 のように「JPNxxx.txt:数値」という形で、どのファイルに、どれほどの頻度で go とその変化形が出現していたかを確認することができます。
ただし、この検索結果には、母語話者による添削文に含まれる go とその変化形も含まれていますから、学習者が書いた文だけを対象にこのコマンドを実施する必要があります。第10回で紹介した処理を行ってから、上記のコマンドを実行することもできますが、grep コマンドを「連続して実行する」ことによって、より簡単に学習者の文だけを対象にして検索を実行することができます。
次回も、「grep」コマンドのオプションを交えながら、効率的なデータ検索を紹介します。
―
▼お知らせ
2008年10月4日に、学習者コーパス「NICE」の正式版を公開しました。無償で利用可能で、特別な手続きは必要ありませんので、ぜひ研究調査にご利用ください。詳しくは、こちらのサイトをご覧ください。
―
■筆者プロフィール
阪上辰也(さかうえ・たつや)
名古屋大学大学院 国際開発研究科 特任助教。
専門は、コンピュータを利用した外国語教育。
ウェブサイトは、sakauetatsuya.net。
―
※編集部注
当サイト上ではいわゆる全角の引用符が表示されますが、実際の作業ではいずれもいわゆる半角の引用符を入力します。
UNIX によるコーパスデータの処理 (3)
2009年 2月 10日 火曜日 筆者: 阪上 辰也学習者コーパス入門 第19回
今回は、前回紹介した「grep」コマンドの発展的な使い方を紹介します。
簡単に復習しておきますと、grep コマンドを使うことで、ある(複数の)ファイルを対象として、検索した文字列を含む行を表示させることができます。この grep コマンドには、複数の「オプション」が存在し、そのオプションを利用すると、より高度なデータ処理ができるようになります。今回は、2つのオプションを紹介します。
まず1つめのオプションは、行数をカウントする「c オプション」です。ターミナルを起動し、NICE の学習者の作文データがあるディレクトリ(フォルダ)へと移動した上で、以下のコマンドをターミナルの画面に入力します。なお、オプションは、コマンドと検索文字列の間に、ハイフン付けて入力します。
grep -c “I think” JPN001.txt [Enter キーを押す](※)
結果として、コマンドを入力した次の行に、3 という数値が表示されているはずです。つまり、JPN001.txt の中には、「I think」というフレーズが3回出現していたということを示しています。
今度は、1つのファイルだけでなく、全ファイルを対象に行うと、各ファイルに含まれる「I think」の出現数を数えることができます。以下のコマンドを入力してください。
grep -c “I think” *.txt [Enter キーを押す]
Enter キーを押すとすぐ、JPN001.txt:3、JPN002.txt:3、JPN003.txt:1、というように、各ファイルごとの出現数が表示されます。このように「c オプション」を利用することで、コーパス中に現れる表現の頻度を簡単に数えることができます。
次のオプションは、大文字と小文字を区別せずに検索できる「i オプション」です。例えば、大文字と小文字を区別せずに,「it」をまとめて検索する場合は、以下のようにコマンドを入力することになります。
grep -i ” it ” *.txt [Enter キーを押す](it の前後に、半角スペースを入れてください。)
検索結果が一気に表示されますが、小文字の「it」はもちろんのこと、文頭にある「It」もヒットしていることを確認してください。ちなみに、オプションは、複数のものをまとめて指定することができます。例えば、以下のように、c オプションと i オプションをまとめて指定することで、「it」が各ファイルにどれだけ含まれているかを確認することができます。
grep -ic ” it ” *.txt [Enter キーを押す](it の前後に、半角スペースを入れてください。)
Enter キーを押すとすぐに、JPN001.txt:17、JPN002.txt:3、JPN003.txt:3、というように各ファイルに含まれる「it」の頻度が表示されます。
なお、検索文字列として「it」という短い文字列を指定した場合、「i と t が並んでいるもの」が検索結果として表示されるだけです(つまり、コンピュータは、「it」が代名詞であると理解して、その単語を検索してくれるわけではありません)。さきほど、it の前後に半角スペースを入れたのは、「with」や「Italy」などのように、単語中に it を含むものが結果に混ざらないようにするための対策でした。ただし、この場合、「it’s」 のような縮約系を含んだ表現はヒットしないため、実際には、複数回検索を繰り返すなど、慎重に検索作業を進める必要があります。
次回も、「grep」コマンドのオプションを使ったデータ処理方法を紹介します。
—
▼お知らせ
2008年10月4日に、学習者コーパス「NICE」の正式版を公開しました。無償で利用可能で、特別な手続きは必要ありませんので、ぜひ研究調査にご利用ください。詳しくは、こちらのサイトをご覧ください。
—
■筆者プロフィール
阪上辰也(さかうえ・たつや)
名古屋大学大学院 国際開発研究科 特任助教。
専門は、コンピュータを利用した外国語教育。
ウェブサイトは、sakauetatsuya.net。
—
※編集部注
当サイト上ではいわゆる全角の引用符が表示されますが,実際の作業ではいずれもいわゆる半角の引用符を入力します。
UNIX によるコーパスデータの処理 (2)
2009年 1月 27日 火曜日 筆者: 阪上 辰也学習者コーパス入門 第18回
まず、簡単にLinuxのインストール方法を紹介します。
作業環境として、Windows マシンを利用されている方が多いかと思いますので、ここでは、Windows を起動している状態で、同時に Linux を起動するための方法を簡単に説明します。必要なものは、Linux という OS そのものと、Windows 上で Linux を起動させるためのソフトウェアの2つです。
Linux も、その Linux を動作させるためのソフトウェアも、無償で利用できるものがありますので、それらをダウンロードして利用します。インストール方法については、Web上に多数情報があります。一例として、Ubuntu という名前の Linux を、VMware Player というソフトを使って動作させるまでの過程を説明したページにリンクしておきますので、参考にしてください(インストール前には、データのバックアップ作業をお忘れなく)。なお、Mac OS X の場合は、OS の基礎部分が UNIX ですので、特別なソフトをインストールする必要はなく、すぐに UNIX 環境で作業をすることができます。
ここからは、UNIX の利用環境が整っている前提で話を進めます。筆者の環境は、Mac OS X (10.5.6) ですので、その環境下での操作法を説明しますが、Linux のような他の UNIX システムでも、同様の操作が可能なはずです。
UNIX を使ったデータ処理では、「ターミナル」というソフトを使います。Mac OS X の場合、「アプリケーション」フォルダを開き、「Utilities」フォルダー内にある「ターミナル」アイコンをダブルクリックすると、ソフトが起動し、以下のようなウィンドウが現れます。この「ターミナル」の画面に、さまざまなコマンドを入力し、データ処理を行うことになります。
![]()

Windows の操作法と最も異なるのは、「コマンドを”文字”で入力する」点です。この点がとても難解に思えて手を出せないという方もいるようですが、コーパス処理に必要なコマンドは、およそ20個程度です。この連載の中でも説明していきます。今回は、最も手軽な検索手法として、サクラエディタでも利用した「Grep」機能を持つ「grep」コマンドを紹介します。grep コマンドは、「指定された文字列を含む行を表示する」というコマンドです。
まずは、NICE のデータがある場所まで移動します。そのために、ターミナルの画面に
cd Desktop/nice_ver1_0/nns
と入力して [return] キーを押します。UNIX では、フォルダ(=ディレクトリとも言います)への移動にもコマンドが必要になります。この時に使うのが、「cd」というコマンドです。これは、「Change Directory」に由来していて、ディレクトリの移動時に使うコマンドです。
上記のコマンドを入力すると、デスクトップ上にある nice_1_0 という NICE のフォルダへ移動し、さらに、その中にある「nns」フォルダの中へ移動したことになります。Windows であれば、フォルダをダブルクリックして、見た目にもフォルダを開いている感覚が得られますが、UNIX では、現在位置を知らせる文字情報しか表示されませんので、この無機質さに慣れるのには、少し時間がかかるかもしれません。
学習者のデータが入った「nns」フォルダに移動することができたら、今度は、
grep “I think” *.txt
とターミナルの画面に入力して [return] キーを押します。「grep」コマンドを使い、「I think」という表現を検索する個アンドです。最後の「*.txt」は、拡張子が TXT になっているものを検索対象にする、という意味です。すると、「I think」が含まれた行が一気に表示されるはずです。一連の操作の模様は、こちらの動画を参照してください。
次回も、「grep」コマンドを使ったデータ処理方法を紹介します。
—
▼お知らせ
2008年10月4日に、学習者コーパス「NICE」の正式版を公開しました。無償で利用可能で、特別な手続きは必要ありませんので、ぜひ研究調査にご利用ください。詳しくは、こちらのサイトをご覧ください。
—
■筆者プロフィール
阪上辰也(さかうえ・たつや)
名古屋大学大学院 国際開発研究科 特任助教。
専門は、コンピュータを利用した外国語教育。
ウェブサイトは、sakauetatsuya.net。
UNIX によるコーパスデータの処理 (1)
2009年 1月 13日 火曜日 筆者: 阪上 辰也学習者コーパス入門 第17回
今年から、UNIX を用いた基本的なコーパス処理の方法を紹介します。今回は、UNIX によるデータ処理の必要性を説明します。
これまで、OS として Windows がインストールされたコンピュータ上での処理を前提とし、「サクラエディタ」(無償)や Microsoft Excel などを利用したデータの処理方法を紹介してきました。
しかし、コーパスのデータ規模が大きくなり、自分の調査目的に応じた処理を行おうとした場合、エディタなどの既存のソフトだけを利用していたのでは、十分に対応することができなくなります。学習者コーパスは、今後、データ量が増えるものと予想され、大規模なデータになればなるほど、ソフトによるデータ処理は困難になります。
そこで、コーパス検索の専用ソフト(WordSmith や AntConc など)を利用するという手段もあります。実際、専用のソフトをお使いの方も多いかと思います。しかし、専用のソフトを使うと、大規模なデータこそ扱えるようになるものの、ソフト内でどのような処理が行われているかが「ブラックボックス化」してしまいます。例えば、あるソフトが、「up-to-date」という表現を、1つの単語としてカウントしているのか、3つの単語としてカウントしているのかは、マニュアルなどを見て、処理の基準について確認する必要があります。ソフトを使った処理に頼り過ぎてしまうと、こうした処理に関する過程を見落としがちになります。
以上のことから、大量のデータに対して、調査目的に応じた自由な処理を行うため、また、データ処理の過程を知るためにも、「UNIX」を使ったテキスト処理の方法を学ぶことが必要になると考えています。UNIX とは OS の一種で、UNIX 上で利用可能な「コマンド」(=コンピュータに対する命令)を入力することで、大量のデータを「高速に処理する」ことができるようになります。UNIX をベースにした主要な OSとして、Linux や Mac OS X があります。Windows がインストールされたコンピュータ上でこれらの OS を動作させることもできますが(Mac OS X は除く)、できれば、処理用のコンピュータがもう1台あるとよいでしょう。最近では、これらの OS がインストールされたコンピュータも手に入れやすくなりました(Linux がインストールされたコンピュータならば、5万円程度で入手可能)。
次回から、この UNIX による具体的な処理方法を紹介します。慣れるまでには少し時間がかかると思いますが、UNIX によるデータ処理方法を身に付ければ、処理の自由度が増し、高速で効率的な処理ができるようになりますので、コーパスを使った言語調査を行おうという方は、これを機にぜひ挑戦してみてください。
—
▼お知らせ
2008年10月4日に、学習者コーパス「NICE」の正式版を公開しました。無償で利用可能で、特別な手続きは必要ありませんので、ぜひ研究調査にご利用ください。詳しくは、こちらのサイトをご覧ください。
—
■筆者プロフィール
阪上辰也(さかうえ・たつや)
名古屋大学大学院 国際開発研究科 特任助教。
専門は、コンピュータを利用した外国語教育。
ウェブサイトは、sakauetatsuya.net。
学習者コーパス“NICE”を検索する (9)
2008年 12月 16日 火曜日 筆者: 阪上 辰也学習者コーパス入門 第16回
今回は、NICE 内の英作文を添削文と比較する方法を紹介します。
今回のデータ処理にあたっては、「サクラエディタ」(無償)と 「WinMerge」(無償)を使用します。
第5回の記事でも取り上げましたが、NICE の特徴のひとつとして、学習者の書いた作文に対し、母語話者の添削文が付与されていることを紹介しました。両者の文を比較することで、学習者の不自然な表現を、正しくはどう書くべきであったかを知ることができるようになります。この比較のため、今回は「WinMerge」というソフトを利用します。
比較をする前に、比較するデータを2種類用意する必要があります。ひとつは学習者の英文であり、もうひとつは母語話者による添削文です。学習者の英文を抜き出す作業手順については、第10回の記事で既に紹介しています。また、添削文だけを抜き出す作業手順は、学習者のデータを抜き出す手順と基本的に同じです。作業時の唯一の違いは、添削文が「%NTV」で始まる行であるという点で、この点にのみ気をつければ、Grep 検索で簡単に添削文のみを抽出することができます。
2種類のデータが用意できたところで、今度は「WinMerge」をインストールの上、起動します。ここでは、学習者の英文を集めた「nice_jp_all.txt」というファイルと、添削文を集めた「nice_ns_all.txt」という2種類のファイルを開くように指定し、OK ボタンを押せば、あっという間にデータの比較結果が色分けで表示されます。この操作の模様は、こちらの動画を参照してください。なお、動画では、画面の左側に学習者の英文、右側に添削文が表示されており、色の濃淡によって両者の違いが示されています。
表示された結果から、学習者の英文が母語話者によってどのように書き換えられているのかを観察して、必要に応じてエラータグなどの情報を埋め込み、新しい名前をつけてファイルを保存すれば、エラータグを含んだ新しいコーパスを構築することができます。エラーに関するデータが蓄積されれば、学習者の表現は、単語レベルでの不自然さが多いのか、構文レベルでの不自然さが多いのかといった調査も可能になります。
—
▼お知らせ
2008年10月4日に、学習者コーパス「NICE」の正式版を公開しました。無償で利用可能で、特別な手続きは必要ありませんので、ぜひ研究調査にご利用ください。詳しくは、こちらのサイトをご覧ください。
—
■筆者プロフィール
阪上辰也(さかうえ・たつや)
名古屋大学大学院 国際開発研究科 特任助教。
専門は、コンピュータを利用した外国語教育。
ウェブサイトは、sakauetatsuya.net。
学習者コーパス“NICE”を検索する (8)
2008年 12月 2日 火曜日 筆者: 阪上 辰也学習者コーパス入門 第15回
今回は、NICE 内の各英文に含まれる単語数をカウントする方法を説明します。
データの処理にあたっては、「サクラエディタ」(無償)と Microsoft Excel(以下、Excel と表記)を使用します。今回の動画では、Excel 2007 という最新版のものを使用していますが、古いバージョンの Excel でも、同じ手順で語数をカウントできます。
まずは、学習者の英文を抜き出す作業を行います。この作業手順については、第10回の記事で既に紹介しています。簡単におさらいをしておきますと、1) Grep 検索により学習者だけの英文を抜き出した後(参照:こちらの動画)、2) 不要な情報(フォルダ名など)を削除します(参照:こちらの動画)。学習者の英文を抜き出すことができたら、「nice_jpn_all.txt」といった名前をつけてデータを保存します。
続いて、保存したテキストファイルを、Excel を使って開きます。無事に開くことができれば、1つのセルに、1つの英文が入った形で表示されているはずです。
ここで、Excel の関数を使って、各文に含まれる単語数をカウントします。使う関数は、LEN・TRIM・SUBSTITUTE という3種類です。A1 のセルに入っている英文の単語数をカウントする場合は、隣のセル(=B1)に「=IF(LEN(TRIM(A1))=0,0,LEN(TRIM(A1))-LEN(SUBSTITUTE(A1,” “,”"))+1)」という式を入力します(※)。残りのセルに、この関数をコピーすれば、各英文の単語数を一気に出すことができます。操作の模様は、こちらの動画を参照してください。
Excel の関数の入力でミスをしなければ、特に操作が困難ということはありません。余力のある方は、最長の英文にはいくつの単語が含まれているか、また、ひとつの英文に含まれる平均単語数を調べてみてください。
—
▼お知らせ
2008年10月4日に、学習者コーパス「NICE」の正式版を公開しました。無償で利用可能で、特別な手続きは必要ありませんので、ぜひ研究調査にご利用ください。詳しくは、こちらのサイトをご覧ください。
—
■筆者プロフィール
阪上辰也(さかうえ・たつや)
名古屋大学大学院 国際開発研究科 特任助教。
専門は、コンピュータを利用した外国語教育。
ウェブサイトは、sakauetatsuya.net。
—
※編集部注
当サイト上ではいわゆる全角の引用符が表示されますが,Excelではいずれもいわゆる半角の引用符を入力します。
学習者コーパス“NICE”を検索する (7)
2008年 11月 18日 火曜日 筆者: 阪上 辰也学習者コーパス入門 第14回
今回は、NICE に含まれる単語の一覧表を作成する方法を説明します。
データの処理にあたっては、「サクラエディタ」(無償)と Microsoft Excel(以下、Excel と表記)を使用します。今回の動画では、Excel 2007 という最新版のものを使用していますが、古いバージョンでも同じ手順で、一覧表を作成することができます。
まずは、前回行った作業に加えて、記号類の削除をする処理を行います。今回は、ピリオド、コンマ、クエスチョン・マーク、エクスクラメーション・マーク、そして括弧の5種類を削除します。サクラエディタで、検索メニューから置換機能を選択し、置換前の欄には、「[\.\,\?\!\(\)]」を入力します。今は、削除の処理を行うので、置換後の欄には何も入力しません。正規表現の使用に関するオプションにチェックが入っているかどうかを確認し、「すべて置換」のボタンを押すと、5種類の記号が削除されます。
記号類の削除を行った後で、「nice_all.txt」といった名前をつけてデータを保存します。次に、このファイルを、Excel を使って開きます。無事に開くことができれば、1つのセルに、1つの単語が入った形で表示されているはずです。
まずは、単語をアルファベット順に並べ替えます。Excel のメニューから、「データ」→「並び替え」を選択し、昇順で並び替えます。処理が終わると、数字が一番上に並んでいて、その後を見ると「a」などが見つかるはずです。その後、単語の右隣のセルを選択し、COUNTIF という関数を使って、単語の頻度を求めます。例えば、A2 のセルにある単語の頻度を数えるには、B2 のセルに、「=COUNTIF(A:A,A2)」と入力します。この場合、「A の列に A2 に含まれる文字列があったらすべて数えなさい」という命令になっています。残りのセルに、この関数をコピーすれば、各単語の頻度を一気に出すことができます。
最後に、単語と頻度が重複している行を隠して見えないようにします。「データ」→「フィルタ」→「詳細設定」を選択します。ウィンドウの下に、「重複するレコードを無視する」というオプションがありますので、ボックス内にチェックを入れてから、「OK」ボタンを押します。すると、重複している行が消えて(正確には、非表示の状態になっています)、各単語とその頻度の一覧が表示されます。最後に、この一覧をコピーして、別のワークシートにコピーして貼りつければ、単語の一覧表が完成します。この操作の模様は、こちらの動画を参照してください。
Excel の操作が少し難しいかもしれませんが、並び替え、関数、フィルタリングという3つの機能を順番に使うだけですので、動画を見ながらゆっくりと操作すれば、単語の一覧表を作成することができますので、ぜひ試してみてください。
—
▼お知らせ
2008年10月4日に、学習者コーパス「NICE」の正式版を公開しました。無償で利用可能で、特別な手続きは必要ありませんので、ぜひ研究調査にご利用ください。詳しくは、こちらのサイトをご覧ください。
—
■筆者プロフィール
阪上辰也(さかうえ・たつや)
名古屋大学大学院 国際開発研究科 特任助教。
専門は、コンピュータを利用した外国語教育。
ウェブサイトは、sakauetatsuya.net。







![『新明解国語辞典 第七版[机上版]』7年ぶりに改訂『新明解国語辞典』の机上版。判型は並判より大きいA5判で、さらに文字が大きく見やすい。2色刷。紙面内容は並版と同一。 『新明解国語辞典 第七版[机上版]』](http://dictionary.sanseido-publ.co.jp/wp-images/smk_kijo.jpg)
![『新明解国語辞典 第七版[小型版]』7年ぶりに改訂『新明解国語辞典』の小型版。並判より一回り小さいA6変型判で、携帯にも便利。2色刷。紙面内容は並版と同一。 『新明解国語辞典 第七版[小型版]』](http://dictionary.sanseido-publ.co.jp/wp-images/smk_kogata.jpg)
![『新明解国語辞典 第七版[革装版]』7年ぶりに改訂『新明解国語辞典』の革装版。丈夫で使うほどに手になじむ。判型は並版・特装版と同じB6判。2色刷。紙面内容は並版と同一。 『新明解国語辞典 第七版[革装版]』](http://dictionary.sanseido-publ.co.jp/wp-images/smk_kawaso.jpg)























































































































































2007年









