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

Pandas如何删除指定重复列名year,保留其余重复列season/1/2/3

实现方法

你可以通过定位所有列名为year的列的位置,仅保留第一个year列、删除后续重复的year列即可,不会影响其他重复名称的列:

方法1(直观易读)

# 获取所有名称为year的列,跳过第一个匹配项,删除剩余的重复year列
duplicate_year_cols = [col for i, col in enumerate(df1.columns) if col == 'year'][1:]
df2 = df1.drop(duplicate_year_cols, axis=1)

方法2(布尔索引写法)

# 构造过滤掩码:仅排除后续重复出现的year列
mask = ~((df1.columns == 'year') & (df1.columns.to_series().eq('year').cumsum() > 1))
df2 = df1.loc[:, mask]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 08:36:03