我在一个目录上迭代一些代码,我想从我得到的字典中求和相同键的值。
代码正在计算一个单词在.csv文件的一列中出现的次数。它会对给定文件夹中的每个.csv文件执行此操作。
我想要相同键的附加值的输出。如。第一个文件有"狗"这个词;三次,第二次四次。我想把这两个数相加。
计算单词的代码:
for file in os.scandir(directory):
if file.path.endswith(ext):
df = pd.read_csv(file)
klasifikacija = df.iloc[:, 4] # Gets all rows for the fourth column (index starts at 0)
napake = klasifikacija.value_counts()
dict_napake = dict(napake)
您可以创建一个列表,列出您迭代过的所有dicct_napake,并执行以下操作:
import collections
import functools
import operator
dict_napake_1 = {'a': 5, 'b': 1, 'c': 2}
dict_napake_2 = {'a': 2, 'b': 5}
dict_napake_3 = {'a': 10, 'c': 10}
master_dict = [dict_napake_1,
dict_napake_2,
dict_napake_3]
# sum the values with same keys
res = dict(functools.reduce(operator.add,
map(collections.Counter, master_dict)))
print("New dict : ", res)