You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python统计CSV中每年各地区的出现次数并导出至新CSV?

用Python统计NHL选秀数据中每年各地区的出现次数

嘿,这个需求用Python处理非常直接!我给你准备了两种方案——一种是用pandas(处理大型表格数据的首选,效率超高),另一种是用Python标准库的csv模块(不用额外安装依赖),你可以根据自己的环境选择:

方案一:使用pandas(推荐,适合9000行量级的数据)

pandas能帮你几行代码搞定分组统计,非常省心。

步骤:

  1. 先安装pandas(如果还没装的话):
pip install pandas
  1. 编写代码:
import pandas as pd

# 读取原始CSV文件,指定列名(因为原数据没有表头)
df = pd.read_csv('your_original_file.csv', header=None, names=['Year', 'Player', 'Region'])

# 按年份和地区分组,统计每组的数量
count_result = df.groupby(['Year', 'Region']).size().reset_index(name='Count')

# 将结果保存到新的CSV文件
count_result.to_csv('nhl_draft_region_counts.csv', index=False)

代码说明:

  • read_csv:因为你的原始数据没有表头,所以用header=None,并通过names手动指定列名,方便后续操作。
  • groupby(['Year', 'Region']).size():把数据按年份和地区分组,然后统计每组的行数(也就是该地区当年的选秀人数)。
  • reset_index(name='Count'):把分组后的结果转换成普通的DataFrame,并重命名计数列为Count。
  • to_csv:保存结果,index=False避免把DataFrame的索引写入CSV。

方案二:使用Python标准库csv(无需额外安装)

如果不想安装pandas,用内置的csv模块也能实现:

import csv
from collections import defaultdict

# 初始化统计字典:外层键是年份,内层键是地区,值是计数
region_counts = defaultdict(lambda: defaultdict(int))

# 读取原始CSV文件
with open('your_original_file.csv', 'r', newline='', encoding='utf-8') as infile:
    reader = csv.reader(infile)
    for row in reader:
        # 每行数据拆分:年份、球员信息、地区
        year = row[0]
        region = row[2]
        # 更新计数
        region_counts[year][region] += 1

# 将结果写入新CSV文件
with open('nhl_draft_region_counts.csv', 'w', newline='', encoding='utf-8') as outfile:
    writer = csv.writer(outfile)
    # 写入表头
    writer.writerow(['Year', 'Region', 'Count'])
    # 遍历统计结果,写入每一行
    for year in sorted(region_counts.keys()):
        for region, count in sorted(region_counts[year].items()):
            writer.writerow([year, region, count])

代码说明:

  • defaultdict(lambda: defaultdict(int)):创建嵌套的默认字典,自动初始化年份和地区的计数为0,不用手动处理键不存在的情况。
  • 读取文件时用csv.reader逐行读取,拆分出年份和地区,更新计数。
  • 写入结果时,先写表头,再按年份排序(可选,让结果更整齐),把每个年份下的地区和计数写入文件。

两种方案都能帮你得到想要的统计结果,比如1979年QC的出现次数会在结果里显示为1979,QC,1(对应示例里的Raymond Bourque那行)。

内容的提问来源于stack exchange,提问作者EGrignon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 06:15:46