所以我试图计算我的第一列 csv 文件中每个项目的出现次数。但结果不正确:我有这样的输出: OrderedDict([('3178040678842', 1), ('4005808283804', 1), ('3337872414527', 1), .. 而每个数字看起来像 2 或3 次在 csv 文件中。这是代码:import csvfrom collections import Counter, OrderedDict#the purpose of this small script is checking if values are double in EAN list resulteans_to_count = set()with open("example.csv", "r") as new_data:reader = csv.reader(new_data, delimiter=',', quotechar='"')for row in reader: if row: ean = row[0] eans_to_count.add(ean)x = Counter(eans_to_count)y = OrderedDict(x.most_common())print(y)你知道我错在哪里吗?因为我确定结果是不正确的
1 回答
白板的微信
TA贡献1883条经验 获得超3个赞
在set你指望他们之前丢弃重复值。使用 a 的正常方法Counter是直接添加到它:
eans_to_count = Counter()
with open("example.csv", "r") as new_data:
reader = csv.reader(new_data, delimiter=',', quotechar='"')
for row in reader:
if row:
ean = row[0]
eans_to_count[ean] += 1
添加回答
举报
0/150
提交
取消