【问题标题】:Getting error with pandas data reader when looking up stock with a period in the ticker在股票代码中查找带有句点的股票时,熊猫数据阅读器出现错误
【发布时间】:2019-10-11 13:43:45
【问题描述】:

运行此代码时出错:

import datetime as dt
import pandas_datareader.data as web

start = dt.datetime(2018,12,1)
end = dt.datetime.now()
df = web.DataReader('brk.b', 'yahoo', start, end)

print(df)

我收到“关键错误:‘日期’”

这是 SP 500 中唯一不是严格意义上的字母的股票,因此我的程序不会运行。所有其他股票代码中只有字母的股票都可以正常工作。我添加了一个 try/except 来跳过这只股票,但我想知道它为什么会发生以及如果可能的话我该如何解决。提前致谢

编辑:找到一个可行的解决方法,编辑如下:

改变:

'brk.b'

到:

'brk.b'.replace('.','-')

使用替换,如果您有大量代码列表,您只需调用您的列表,使用替换将句点交换为破折号,它应该能够获取该公司的数据

【问题讨论】:

  • 请提供更多代码。
  • 这就是整个代码。无论如何,我想出了一个完美的解决方法。我将编辑 OP

标签: python pandas pandas-datareader


【解决方案1】:

基于此信息:https://github.com/pydata/pandas-datareader/issues/282。有几种股票必须手动添加“-”(或将“.”替换为“-”)才能与 Yahoo 合作,例如 BF-B、BRK-B、FCE-A、JW-A、LGF-A , LGF-B, PBR-A, RDS-A, RDS-B。

希望对你有帮助。

【讨论】:

    猜你喜欢
    • 2011-01-23
    • 2013-01-04
    • 1970-01-01
    • 2015-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-15
    • 1970-01-01
    相关资源
    最近更新 更多