ranaroussi / yfinance

Download market data from Yahoo! Finance's API
https://aroussi.com/post/python-yahoo-finance
Apache License 2.0
13.02k stars 2.31k forks source link

Panel fails to init #14

Closed nicolasbaum closed 7 years ago

nicolasbaum commented 7 years ago

For actions='only' call, at certain point Panel fails to init from data stored in DFS

Note: This happens after several succesfull calls to the function exactly at the same point. I believe this has something to do with duplicated fields in the cached data

File "C:/Users/Nicolas/Documents/Merval\Scrapper.py", line 103, in correctSplitsAndDividends actions=pdr.get_data_yahoo(tickers=symbol,start=start,end=end,actions='only',aspanel=False) File "C:\Users\Nicolas\Anaconda2\lib\site-packages\fix_yahoo_finance__init.py", line 194, in download data = pd.Panel(DFS) File "C:\Users\Nicolas\Anaconda2\lib\site-packages\pandas\core\panel.py", line 148, in init minor_axis=minor_axis, copy=copy, dtype=dtype) File "C:\Users\Nicolas\Anaconda2\lib\site-packages\pandas\core\panel.py", line 173, in _init_data mgr = self._init_dict(data, passed_axes, dtype=dtype) File "C:\Users\Nicolas\Anaconda2\lib\site-packages\pandas\core\panel.py", line 228, in _init_dict v = v.reindex(d) File "C:\Users\Nicolas\Anaconda2\lib\site-packages\pandas\core\frame.py", line 2733, in reindex kwargs) File "C:\Users\Nicolas\Anaconda2\lib\site-packages\pandas\core\generic.py", line 2515, in reindex fill_value, copy).finalize__(self) File "C:\Users\Nicolas\Anaconda2\lib\site-packages\pandas\core\frame.py", line 2679, in _reindex_axes fill_value, limit, tolerance) File "C:\Users\Nicolas\Anaconda2\lib\site-packages\pandas\core\frame.py", line 2690, in _reindex_index allow_dups=False) File "C:\Users\Nicolas\Anaconda2\lib\site-packages\pandas\core\generic.py", line 2627, in _reindex_with_indexers copy=copy) File "C:\Users\Nicolas\Anaconda2\lib\site-packages\pandas\core\internals.py", line 3886, in reindex_indexer self.axes[axis]._can_reindex(indexer) File "C:\Users\Nicolas\Anaconda2\lib\site-packages\pandas\core\indexes\base.py", line 2836, in _can_reindex raise ValueError("cannot reindex from a duplicate axis") ValueError: cannot reindex from a duplicate axis

ranaroussi commented 7 years ago

Should be fixed in v 0.0.17

Upgrade using:

$ pip install fix_yahoo_finance --upgrade --no-cache-dir
ranaroussi commented 7 years ago

Solved. See #17