【发布时间】:2016-02-05 16:51:31
【问题描述】:
我有一个包含句子的文本语料库。
我希望计算每个单词的出现次数并避免多次添加任何单词(例如,多次出现的“,”必须添加一次才能返回类似 ',': 2047 的内容)
期望的输出:'partner': 7, 'meetings': 7, '14': 7, 'going': 7,etc。
我意识到我需要使用set() 来避免重复。但我不知道怎么做。目前,我通过说append only if not already in occurrences 来避免添加已经在列表中的元素
但这不起作用,因为我在结果中多次收到',':2047。
我在示例代码中避免使用列表理解来增加读者的理解! :P
计算单词中单词[i]的出现次数
occurrences = []
for i in range(1, words.__len__() - 1):
if words[i-1] not in occurrences:
occurrences.append((words[i - 1], words.count(words[i - 1])))
print(occurrences)
【问题讨论】:
-
使用
collections.Counter -
我相信与重复的问题相比,我的问题更容易通过预期输出快速掌握。 IDC 如果这个被删除了。
标签: python list dictionary set