next up previous
Next: その他 Tips Up: 単語統計 Previous: 入手とインストール

staslova 利用例

本節では staslova の利用例を示します。

1.
対象テキスト準備
(a)
電子テキストの入手
    インターネット上のリソースをあさって 研究対象の電子テキストを入手しましょう。 例として、オレゴン州立大学が Webサーバ上で公開しているものから {\tencyr\cyracc M. Bulgakov}{\tencyr\cyracc<Master i Margarita>} をダウンロードします。 ファイル名は``master.zip''としておきます。
    画面 (図9.1) には KOI8-R コードのテキストを PKZIP で圧縮した旨の説明があります。


  
図 9.1: インターネット Web サーバ接続
\includegraphics[width=1.2\linewidth]{orst.eps}

(b)
圧縮ファイルの伸張
    画面の説明に PKZIP 圧縮とありますので、 FreeBSD の unzip を利用して圧縮ファイルを復元する必要があります。 pkg_add コマンドで事前にインストールしておく必要があります。 シェルのコマンドラインで ``unzip master.zip'' を実行します。 するとファイルの圧縮が解かれて ``MASTER.KOI'' なるファイルがえられました。 (図 9.2)


  
図 9.2: zipファイルの伸張
\includegraphics[width=1.2\linewidth]{zipexe.eps}

(c)
コード変換
    Mule は ISO 8859-5 をサポートしているので、 閲覧するため KOI8-R → ISO 8859-5 コード変換をしましょう。 translit を利用して文字コードを KOI8-R から GOST (ほぼ ISO 8859-5 と同じ)に変換します。
 
         % translit -i MASTER.KOI -o master.8859 -t koi8-gos.rus
 

(d)
X11 Compound Text 作成
    staslova の入力テキストは X11 Compound Text です。 uso2022 を利用して X11 Compound Text に変換します (uso2022 については 10.2 を参照してください)。     -e5 オプションを指定して対象テキストが ISO 8859-5 Cyrillic であることを指示します。
 
        % uso2022 -e5 < master.8859 > master_i_margarita
 
    ``master_i_margarita''を Mule で開いてみます。 読める状態になりました。 (図 9.3)

テキストの状態をよく確かめます。 {\tencyr\cyracc Bulgakov} の研究者ならタイプミスなどの不備がないか ひととおりチェックすべきでしょう。


  
図 9.3: Compound Text ファイル
\includegraphics[width=1.2\linewidth]{master.uso.eps}

2.
実行定義ファイルの準備
    staslova の実行定義ファイルをエディタ (Mule) で作成します。 staslova は実行定義ファイルがなくても動作する仕様ですが、 区切り文字がプリミティブ(空白文字、改行文字、その他制御文字程度)なので、 追加するのが現実的です。
    ファイル作成上の注意事項は次のようなところです。

    検索条件(seコマンド)の例は次のとおりとしておきます。
 
        se {\tencyr\cyracc(krasot*} + {\tencyr\cyracc krasiv*} + {\tencyr\cyracc prekrasn*} + {\tencyr\cyracc krasav*) * (*a} + {\tencyr\cyracc*y)}
 
    意味する所は直観的に理解できるのではないでしょうか。
 
    図9.4は準備した定義ファイルです。


  
図 9.4: 実行定義ファイル
\includegraphics[width=1.2\linewidth]{def.eps}

 

3.
コマンドの実行
さてコマンドを実行します。処理の指定は次のものとします。

    図 9.5に実行の様子を示します。 図中の ``[3]'' のところです。 実行時間は対象テキストの容量や検索条件及び区切り文字条件に依存します。


  
図 9.5: staslova実行
\includegraphics[width=1.2\linewidth]{staexe.eps}

4.
統計機能
    処理結果を見てみましょう。(図 9.6 及び 9.7)


  
図 9.6: 統計機能(1)
\includegraphics[width=1.2\linewidth]{sta1.eps}

    単語統計は文字コード順なのでだいたい辞書順ですが、 小文字のセットが文字コード上大文字の後方に定義されているので、 小文字変換を行わない条件で実行した場合、 先頭が小文字の単語は大文字の単語のあとに出力されます。


  
図 9.7: 統計機能(2)
\includegraphics[width=1.2\linewidth]{sta2.eps}

    ``***** 112624 total statistics of 23868 words.'' とは、ロシア語に分類された単語が 23,868 語でのべ出現回数が 112,624 回だったことを示しています。 平均的に同じ言葉を概ね 4 回ずつ使っている勘定です。 明細行を見ればわかりますが、 当然名詞や動詞などの変化形は別個に扱われますので これをさらに整理したい場合、 手作業で編集するか別途プログラムで支援するかが必要となります。

5.
検索機能
    結果データの最後の方に検索処理の結果レポートがあります。 (図 9.8 及び 9.9)


  
図 9.8: 検索機能(1)
\includegraphics[width=1.2\linewidth]{mat1.eps}


  
図 9.9: 検索機能(2)
\includegraphics[width=1.2\linewidth]{mat2.eps}

    ``{\tencyr\cyracc
krasavitsa}     12''は ``{\tencyr\cyracc
krasavitsa}''が 条件に適合し、12 回出現したことを示しています。 これは出力レベル 1 以上で出力されます。
    さらに次行以降文学テキストにおいて該当する部分が表示されています。 出力レベル 2 で出力されます。 ``***** [2413]'' とはテキストの先頭行を第 1 行とした場合の何行目かを表しています。 空行 (改行だけの行) も 1 行です。 テキスト断片はマッチした単語が出現する 1 行前と 1 行後ろと合計 3 行です。 ただし、先頭行と最後行の場合は 2 行となります。
    統計機能と同様最後に当該条件での単語数 (見出し) と総出現回数が表示されます。


next up previous
Next: その他 Tips Up: 単語統計 Previous: 入手とインストール | ホームに戻る | もくじに戻る |