-1

我怎样才能在 Python 中做到这一点? 组合词频数据列表

假设我有两个列表 A 和 B 并且都包含按频率降序排列的文件的单词和频率,我该怎么做 Python 中的问题?

from FrequentWords import *
from WordFrequencies import * # makes the list with words&frequencies 
L = WordFrequencies('file.txt')
words1 = L[0]
freqs1 = L[1]
L1 = computeWordFrequencies('file1.txt')
words2 = L1[0]
freqs2 = L1[1]
words = zip(*sorted(zip(L,L1)))
both1 = sorted(freqs1+freqs2,reverse=True)
common_words = set(words1) & set(words2)
frequency_common_words = both1
4

2 回答 2

4

我会使用collections.Counter

>>> from collections import Counter
>>> c = Counter()
>>> a = {'a': 2, 'b': 3}
>>> b = {'b': 3, 'c': 4}
>>> c.update(a)
>>> c.update(b)
>>> c
    Counter({'b': 6, 'c': 4, 'a': 2})
于 2013-03-08T22:51:11.147 回答
0

如果您的起始数据在字典中,则可行:

output_dict = {}
for k, v in first_dict:
    if k in second_dict:
        v = v + second_dict[k]
    output_dict[k] = v

for k, v in second_dict:
    if k not in first_dict:
        output_dict[k] = v
于 2013-03-08T22:50:53.100 回答