【发布时间】:2018-04-11 12:26:44
【问题描述】:
我有一个存储在树中每个节点的 5 个文档的文档列表。在每个列表中,都会出现许多单词,这些单词可能在同一个文档以及其他文档中重复多次。我想计算每个单词出现的文档数量。 例如:A 是父节点,B,C 是子节点。 A,B,C 有 5 个文档。
A=[['a','b'],['a','a'],['c','d'],['a','c'],['d','e']]
我想要{'a':3,'b':1,'c':2,'d':2,'e':1}形式的结果
下面是我正在使用的代码,但它没有计算每个文档,而是计算每个单词在文档中出现的次数。
def get_count(node):
word_count_dict = defaultdict(int)
next_node=[]
for i in range(len(node.documents)):
for words in node.documents[i]:
word_count_dict[words] +=1
node.word_count = word_count_dict
for child in node.children:
next_node.append(child)
if next_node:
for nn in next_node:
get_count(nn)
return word_count_dict
get_count(A)
请帮助如何做到这一点。
【问题讨论】:
标签: python pandas binary-search-tree tf-idf