使用FreqDist计算单词频率总和,python

2 投票
4 回答
9101 浏览
提问于 2025-04-16 07:13

如何使用 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:])

撰写回答