编辑
>请参阅下面有关如何使它工作的答案。
我在使用fix_yahoo_finance库(版本0.0.22)时遇到问题。 为我指明正确方向的任何帮助都会很棒。
我的目标是加载库存数据。目前,fix_yahoo_finance返回一个熊猫数据框,对我来说非常有用。
这是我正在使用的代码:
import datetime
import psycopg2
import fix_yahoo_finance as yf
import pandas as pd
start_dt = datetime.datetime(2004,12,30)
end_dt = datetime.datetime(2017,12,01)
symbol = 'MMM'
yf.pdr_override()
data = yf.download(symbol, start='2004-12-30', end='2017-12-01')
这是错误
Traceback (most recent call last):
File "<ipython-input-38-d43dee1dd457>", line 1, in <module>
data = yf.download(symbol, start=start_dt, end=end_dt)
File "C:\Python27\Lib\site-packages\fix_yahoo_finance\__init__.py", line
194, in download
data = _pd.concat(_DFS.values(), axis=1, keys=_DFS.keys())
File "C:\Python27\Lib\site-packages\pandas\tools\merge.py", line 754, in
concat
copy=copy)
File "C:\Python27\Lib\site-packages\pandas\tools\merge.py", line 799, in
__init__
raise ValueError('All objects passed were None')
ValueError: All objects passed were None
答案 0 :(得分:0)
您可以尝试使用pandas-datareader库,如下所示:
from pandas_datareader import data as pdr
import fix_yahoo_finance as yf
yf.pdr_override()
data = pdr.get_data_yahoo("MMM", start="2004-12-30", end="2017-12-01")
您可以查看此GitHub Repo,以获取有关参数的更多详细信息。希望这可以帮助!
答案 1 :(得分:0)
不幸的是,@ Yash Ghandhe的回答对我没有用。
我确实通过安装Anaconda并从那里运行Spyder IDE来使其工作。我安装了Python 3.6版本(以前使用的是Python 2.7)。
我仍然不确定是哪个库导致了该问题,或者不确定是否使用Python 3。
阅读fix-yahoo-finance库的文档(链接到https://pypi.org/project/fix-yahoo-finance/)显示了两条相互冲突的信息。
第一个位于标题下方。它显示了Python 2.7、3.4、3.5、3.6。 在下面的要求下,它还提到了Python> = 3.4。