« 耳の文化と目の文化(15)-視覚的な特性(8) - 『三省堂国語辞典』のすすめ その62 »

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


※編集部注
当サイト上ではいわゆる全角の引用符が表示されますが、実際の作業ではいずれもいわゆる半角の引用符を入力します。

2009年 4月 7日