python使用Counter()对一个两列数据进行计算,取结果的前50个数量的数据,然后将返回值保存在一个csv中
时间: 2024-03-12 09:45:15 浏览: 123
在上一个问题的代码基础上,你可以使用most_common()方法获取前50个数量最多的数据,并将其保存到csv文件中。以下是示例代码:
```python
import csv
from collections import Counter
# 读取csv文件
with open('fruits.csv', 'r') as f:
reader = csv.reader(f)
# 跳过标题行
next(reader)
# 使用Counter函数计算数量
counts = Counter(row[0] for row in reader)
# 取前50个数量最多的数据
top_fruits = counts.most_common(50)
# 将结果保存到新的csv文件中
with open('top_fruits.csv', 'w', newline='') as f:
writer = csv.writer(f)
writer.writerow(['名称', '数量'])
for fruit, count in top_fruits:
writer.writerow([fruit, count])
```
运行代码后,将会生成一个新的csv文件top_fruits.csv,其中包含前50个数量最多的水果。如果有多个水果的数量相同,则按名称的字母顺序排序。
阅读全文