我的csv数据如下所示:
17860 1
17861 1
17861 2
17861 1
17861 1
17861 1
17862 1
17863 1
17863 1
17863 1
我的目标是获取输出以在左列上显示匹配的总和,以得到如下结果:
17860 1
17861 6
17862 1
17863 3
我遇到的麻烦是如何存储5位数字并将其与该列中的其余数据进行比较,然后捕获一位数字以获取总和。
最佳答案
您可以利用Hash(又称Python中的Dictionary)数据结构。通读文件,并将第一列编号存储为键,第二列存储为值。如果发现该键已经存在,则将当前值添加到前一个值,或添加新的键本身。
hash = {}
for line in file:
key, value = map(int, line.split())
if key in hash:
hash[key] += value
else:
hash[key] = value