【问题标题】:Getting Quandl Data via Pandas Data-Reader通过 Pandas Data-Reader 获取 Quandl 数据
【发布时间】:2019-06-14 04:06:26
【问题描述】:

我在使用 pandas-datareader 从 Quandl 导入数据时遇到问题。这是我尝试过的代码(使用真正的 API 密钥):

import pandas_datareader.data as pdr
from datetime import date

start=date(1970,1,1)
end=date.today()
ticker='F'
qkey=[My API Key]

pdr.QUANDL_API_KEY=qkey
QUANDL_API_KEY=qkey
pdrquandl=pdr.DataReader('WIKI/'+ticker,'quandl',start,end)      
pdrquandl=pdr.DataReader('WIKI/'+ticker,'quandl',start,end,api_key=qkey)

我在运行时收到以下错误消息:

>>> pdrquandl=pdr.DataReader('WIKI/'+ticker,'quandl',start,end)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python37\lib\site-packages\pandas_datareader\data.py", line 379, in DataReader
    session=session, api_key=access_key).read()
  File "C:\Python37\lib\site-packages\pandas_datareader\quandl.py", line 54, in __init__
    raise ValueError('The Quandl API key must be provided either '
ValueError: The Quandl API key must be provided either through the api_key variable or through the environmental variable QUANDL_API_KEY.
>>> pdrquandl=pdr.DataReader('WIKI/'+ticker,'quandl',start,end,api_key=qkey)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: DataReader() got an unexpected keyword argument 'api_key'

我错过了什么?如何提供 API 密钥?

【问题讨论】:

    标签: python pandas-datareader


    【解决方案1】:

    我使用它并且它有效:

    pdrquandl = pdr.DataReader("WIKI/TICKER", 'quandl', start_date, end_date,api_key = [YOUR_API_KEY])

    【讨论】:

      【解决方案2】:

      quandl 的一种稍微不同的方法

      import quandl 
      quandl.ApiConfig.api_key = "API-KEY"
      aapl = quandl.get("WIKI/TICKER", start_date="YEAR-MONTH-DAY", end_date="YEAR-MONTH-DAY")
      

      【讨论】:

        【解决方案3】:

        source 显示了 DataReader 工厂函数如何将它传递给 Quandl 阅读器:

        elif data_source == "quandl":
                return QuandlReader(symbols=name, start=start, end=end,
                                    retry_count=retry_count, pause=pause,
                                    session=session, api_key=access_key).read()
        

        所以尝试使用 access_key 参数将其传递给 DataReader:

        pdrquandl=pdr.DataReader('WIKI/'+ticker,'quandl',start,end,access_key=qkey)
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-09-26
          • 1970-01-01
          • 2015-04-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多