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

Pandas Timestamp无split属性报错:如何从DataFrame索引提取年份?

解决DataFrame Timestamp索引提取年份的报错问题

错误原因

你尝试用字符串的split("-")方法处理索引,但通过parse_dates=True解析后的索引是Timestamp类型,该类型没有split属性,因此触发AttributeError。

正确解决方案

直接利用Timestamp对象的year属性提取年份,这是最简洁高效的方式:

方法1:提取整数类型的年份

energie_2["Année"] = energie_2.index.year

方法2:提取字符串类型的年份(如果需要)

energie_2["Année"] = energie_2.index.year.astype(str)

修正后的完整代码

# Ajout d'une colonne Année
energie_2["Année"] = energie_2.index.year

batt_na = energie_2[energie_2['Stockage batterie'].notna()]
print(batt_na["Année"].unique())

补充说明

使用index.year直接操作Timestamp对象,比字符串分割更高效,还能避免因日期格式不一致导致的分割错误,是处理pandas日期索引的标准方式。

内容的提问来源于stack exchange,提问作者Cédric Piette

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 08:24:52