使用FreqDist计算单词频率总和,python
如何使用 FreqDist 中的 fd.items() 来计算单词出现的频率总和?
>>> fd = FreqDist(text)
>>> most_freq_w = fd.keys()[:10] #gives me the most 10 frequent words in the text
>>> #here I should sum up numbers of each of these 10 freq words appear in the text
比如,如果 most_freq_w
中的每个单词都出现了 10 次,那么结果应该是 100
!!! 我只需要这 10 个最常见的单词的总出现次数,不需要文本中所有单词的数量
4 个回答
2
它有一个漂亮的打印功能。
fd.pprint()
这样就可以了。
2
要找出一个单词在文本中出现的次数:
raw="<your file>"
tokens = nltk.word_tokenize(raw)
fd = FreqDist(tokens)
print fd['<your word here>']
4
我对FreqDist
是从dict
派生出来的,所以下面的代码应该可以用:
v = fd.values()
v.sort()
count = sum(v[-10:])