使用 Pandas Datareader 访问雅虎财经数据时如何解决'TypeError:字符串索引必须是整数”错误?

Linda Hamilton
发布: 2024-10-21 15:38:29
原创
757 人浏览过

How to Resolve the

使用 Pandas Datareader 访问雅虎财经数据时出现 TypeError

使用 Pandas Datareader 从 Yahoo Finance 检索股票数据时,用户可能会遇到“TypeError” :字符串索引必须是整数”错误。当“symbols”参数需要字符串列表但遇到字符串时,可能会出现此问题。

要解决此错误,请确保“symbols”参数是股票标识符列表。以下是工作代码的示例:

<code class="python">import pandas_datareader

end = "2022-12-15"
start = "2022-12-15"
stock_list = ["TATAELXSI.NS"]

data = pandas_datareader.get_data_yahoo(symbols=stock_list, start=start, end=end)

print(data)</code>
登录后复制

此外,名为 raphi6 的 GitHub 用户提供了一个拉取请求,其中修复了此问题。要安装此修复程序,请按照以下步骤操作:

  1. 安装以下依赖项:

    conda install pycryptodome pycryptodomex
    登录后复制
  2. 卸载当前版本的 Pandas Datareader:

    conda uninstall pandas-datareader
    登录后复制
  3. 安装 Pandas Datareader 的拉取请求版本:

    pip install git+https://github.com/raphi6/pandas-datareader.git@ea66d6b981554f9d0262038aef2106dda7138316
    登录后复制

或者,名为 Nikhil Mulley 的用户建议了一种解决方法,涉及pdr_override() 函数。该函数的使用方式如下:

<code class="python">import pandas_datareader as pdr
import pandas as pd

end = "2022-12-15"
start = "2022-12-15"
stock_list = ["TATAELXSI.NS"]

stock_symbol = stock_list[0]
stock_obj = pdr.DataReader(stock_symbol, 'yahoo', start, end)
stock_data = pd.DataFrame({stock_symbol: stock_obj['Close']})
</code>
登录后复制

以上是使用 Pandas Datareader 访问雅虎财经数据时如何解决'TypeError:字符串索引必须是整数”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!