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

如何在Pandas DataFrame中统计每年对应的唯一飓风ID数量

实现每年唯一飓风ID数量统计的方法

你当前的代码统计的是每年的总数据条目数,因为单场飓风对应多条记录,所以结果和实际飓风数量不符,调整方案如下:

核心修改逻辑

按年份分组后,对ID列做去重计数,使用pandas的nunique()方法即可实现。

完整可运行代码

import pandas as pd

df = pd.read_csv("atlantic.csv")

# 转换日期为pandas datetime格式
df["Date"] = pd.to_datetime(df["Date"].astype(str), format="%Y%m%d")
# 新增年份辅助列
df["year"] = df["Date"].dt.year
# 按年份分组统计唯一ID的数量,默认按年份升序排序
hurricane_count = df.groupby("year")["ID"].nunique()

# 若需要按飓风数量降序排序,可替换为下面的代码
# hurricane_count = df.groupby("year")["ID"].nunique().sort_values(ascending=False)

print(hurricane_count)

效果验证

用你提供的节选数据运行上述代码,输出结果为:

year
1851    2
1852    2
Name: ID, dtype: int64

和节选数据里1851年2个唯一ID、1852年2个唯一ID的实际情况一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 03:12:04