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

如何在Pandas透视表中仅显示单一年份的列数据?

嗨,我来帮你搞定这个问题!要让Pandas透视表只展示2015年的数据,有两种实用的方法,你可以根据自己的场景选择:


方法1:先过滤数据再生成透视表(更推荐)

这种方式效率更高,尤其是处理大数据集的时候——我们先把范围缩小到2015年的数据,避免多余的计算。

具体代码如下:

# 第一步:筛选出仅2015年的记录
filtered_df = df[df["Departure Datetime: Year (YYYY)"] == 2015]

# 第二步:基于筛选后的数据生成透视表
pivot_2015 = pd.pivot_table(
    filtered_df,
    values="Value",
    index=["Reporting Route Description"],
    aggfunc="sum",
    columns=["Departure Datetime: Year (YYYY)"]
)

这样生成的透视表自然就只有2015年这一列啦。


方法2:先生成完整透视表再筛选列

如果你已经生成了包含所有年份的透视表,也可以直接从里面提取2015年的列。假设你原本的透视表变量叫full_pivot:

# 注意:要确认年份列的类型是整数还是字符串
# 如果列名是整数2015:
pivot_2015 = full_pivot[[2015]]

# 如果列名是字符串"2015",就改成:
# pivot_2015 = full_pivot[["2015"]]

执行后就能得到只保留2015年数据的透视表了。

小提醒:如果用第二种方法,一定要核对年份列的数据类型,不然可能会出现“找不到列”的报错哦~


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 06:51:51