序章

単語頻度(term frequency)

クノーの物語のように、本書の計算課題は非常に簡単です。与えられたテキストファイルから、単語とその出現頻度を降順にN(例えば25)個表示します。大文字と小文字を正規化し、「the」、「for」などのストップワード†1を無視します。単純化のために、頻度が等しい場合の順序は気にしません。この課題を単語頻度と呼びます。

[†1] 訳注:ストップワード(stop word)は、a, theなどのように非常に一般的であるため、処理対象から外される単語のこと。

入力と単語頻度の出力例を示します。

Input:
    White tigers live mostly in India
    Wild lions live mostly in Africa

Output:
    live - 2
    mostly - 2
    africa - 1
    india - 1
    lions - 1
    tigers - 1
    white - 1
    wild - 1

プロジェクト・グーテンベルクから入手可能なジェーン・オースティンの『高慢と偏見』(Pride and Prejudice)に対して単語頻度を実行すると、次のような出力が得られます。

mr - 786 elizabeth - 635 very - 488 darcy - 418 such - 395 mrs - 343 much - 329 more - 327 bennet - 323 bingley - 306 jane - 295 miss - 283 one - 275 know - 239 before - 229 herself - 227 though - 226 well - 224 never - 220 sister ...

Get プログラミング文体練習 ―Pythonで学ぶ40のプログラミングスタイル now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.