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

如何从Pandas DataFrame中提取资源首次出现的年份?

提取首次可用时间的年份方法

嘿,既然你已经把df3的索引转换成了datetime类型,提取年份其实非常简单,这里有几种实用且可靠的方法,结合你的场景来给你说明:

方法1:直接从最早日期索引提取年份

因为df3里存的是Resource_ID 1348的所有时间记录,首次可用的时间就是索引里最小(最早)的日期,直接取它的year属性就行:

# 获取首次出现的年份
first_year = df3.index.min().year
print(first_year)  # 输出:2011

方法2:从first('1D')的结果中提取

如果你还是想用你之前的df3.first('1D')结果来提取,也可以这么做:

# 先拿到首次出现的那一行,再取索引的年份
first_row = df3.first('1D')
first_year = first_row.index.year[0]
print(first_year)  # 输出:2011

方法3:给df3新增年份列(如果需要保留所有行的年份信息)

要是你想把年份作为一个新列添加到df3里,方便后续分析,直接利用索引的year属性生成即可:

df3['Year'] = df3.index.year
# 此时df3会新增一列"Year",每一行的年份都会对应显示,包括首次出现的2011-07-01那行的Year值为2011

小提示

优先用前两种基于datetime类型的方法,比字符串截取(比如str[:4])更可靠,因为datetime会自动处理各种合法的日期格式,不会因为日期字符串格式变化出问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 08:13:31