3

この投稿のタイトルにあるように、テキスト内で少なくとも 5 回出現するすべての単語を返す Python プログラムを作成する必要があります。これはかなり単純な質問だと思います。私はいくつかの NLP スキルを習得しようとしている初心者プログラマーですが、何らかの理由でこれを理解できません。あなたの助けは大歓迎です!

ありがとうございました!

4

3 に答える 3

3

最初のステップとして、str.split() を使用して文字列をトークン化してはどうでしょうか。次に、for ループを使用して結果の配列を調べ、次のことを行います。単語が辞書のキーのセットに含まれていない場合は、単語を辞書に追加し、そのカウント (この場合は 1) を格納します。それ以外の場合、単語はが既に含まれている場合は、辞書でそのカウントを検索し、カウントを増やして、辞書に戻します。最後に、単語のカウントが終わったら、辞書を調べて、カウントが 5 以上のものだけを保持します。

于 2013-01-06T05:25:53.443 に答える
0

nltk数分間のグーグル検索で、そのFreqDistクラスにたどり着くはずです。

import nltk
words = nltk.word_tokenize(text)
freq1 = nltk.FreqDist(words)
words_above_five_times = [w for w in freq1.keys() if freq1[w] >= 5]
于 2013-01-06T05:56:16.357 に答える