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

教育类LSTM股票预测项目:Yahoo数据读取报TypeError错误求助

解决Yahoo财经数据读取的TypeError问题

在教育类LSTM股票预测项目中,使用web.DataReader获取苹果(AAPL)股票数据时触发错误,错误提示为TypeError: 字符串索引必须为整数。

原代码

#load Data
company = 'AAPL'
start = dt.datetime(2021,12,17)
end = dt.datetime(2022,12,17)
data = web.DataReader(company,'yahoo',start,end)
print(data)

报错信息

TypeError                                 Traceback (most recent call last)
<ipython-input-15-282e8a3c419c> in <module>
      3 start = dt.datetime(2021,12,17)
      4 end = dt.datetime(2022,12,17)
----> 5 data = web.DataReader(company,'yahoo',start,end)
      6 print(data)

错误提示:TypeError: 字符串索引必须为整数

问题原因及解决方案

问题出在Yahoo财经官方API接口变更,导致原pandas_datareader的'yahoo'数据源无法正常解析返回内容。推荐使用yfinance库替代,这是目前稳定支持Yahoo财经数据获取的工具:

  1. 安装yfinance库
pip install yfinance
  1. 修改后的代码
import yfinance as yf
import datetime as dt

# 加载数据
company = 'AAPL'
start = dt.datetime(2021,12,17)
end = dt.datetime(2022,12,17)
data = yf.download(company, start=start, end=end)
print(data)

若仍想使用pandas_datareader,需指定适配新接口的数据源,但yfinance的兼容性和稳定性更佳。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 11:35:19