〜毎日がEveryday〜

素人SEの日常生活の気づきのブログ。全ての事象もたったひとつのサンプルから成り立っているよ。

仕事のこと。 プログラミングのこと。 日常生活のこと。

英語文章で出てくる単語の頻出回数を調べる

python3.5を利用しています。

 

text = """英語の文章"""
があったとします。

まず、変な記号があれば、その記号を削除を行います。

text = text.replace("記号":"")
replaceメッソドは指定した文字を新しい文字に置き換えることができます。
例:replace(";","")
--> ;の文字列を空の文字列に置き換える(この場合は;を削除している)

次に、文章の中の単語をリストで管理します。
words = text.split()
--> こんな感じにリスト化されます["単語A", "単語B", "単語C"]

次に新しく空の辞書型を作成し、その辞書型の中で単語の頻出回数を調べますます
count = {}
for w in words:
ws = w.lower() #小文字に変換
if ws in count:
count[ws] += 1 #もし辞書型にすでにキーがあれば値を1追加
else:
count[ws] = 1 #なければ、値を1としてキーを登録

基本、頻出1回目の単語はelseの方で処理されることになります。

最後にsortedメソッドを使い頻出単語をアルファベット順してあげます。
またitemsを使い、辞書型のcountからキーと値を取得します。

for k,v in sorted(counter.items()):
if v >= 3:
print(k,v)

以上です。