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

Pandas to_datetime识别DataFrame日期时报KeyError: 'Date'问题咨询

问题根因

pdr.get_data_yahoo() 接口返回的Pandas DataFrame默认会把日期设置为行索引,而非普通数据列,因此你的列名列表里不存在Date字段,访问data['Date']自然会触发KeyError报错。

可用解决方案
  • 方案1:直接提取行索引即可,返回的索引默认已经是datetime格式,无需额外转换:
train_dates = data.index
  • 方案2:如果需要把日期转为普通列方便后续处理,先重置索引再访问:
# 将行索引转为普通列,默认列名就是Date
data = data.reset_index()
train_dates = pd.to_datetime(data['Date'])
通用排查技巧

后续遇到类似列名KeyError问题时,可以先打印当前数据集的所有列名,确认你要访问的列是否存在、名称拼写是否一致:

print(data.columns.tolist())

补充说明:get_data_yahoo返回的日期索引默认已经是datetime64[ns]类型,绝大多数场景下不需要再调用pd.to_datetime做二次格式转换。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.20 11:27:03