Python 3.x Yahoo Finance ValueError:从零大小数组到没有标识的最大缩减操作

Python 3.x Yahoo Finance ValueError:从零大小数组到没有标识的最大缩减操作,python-3.x,yahoo-finance,historical-db,Python 3.x,Yahoo Finance,Historical Db,我一直在试图从雅虎财经获取数据,但我不断地发现这个奇怪的错误 因此,我运行以下代码: #Importing Modules/Libraries import pandas as pd pd.core.common.is_list_like = pd.api.types.is_list_like from pandas_datareader import data, wb import fix_yahoo_finance as yf yf.pdr_override() import nu

我一直在试图从雅虎财经获取数据,但我不断地发现这个奇怪的错误

因此,我运行以下代码:

#Importing Modules/Libraries
import pandas as pd

pd.core.common.is_list_like = pd.api.types.is_list_like

from pandas_datareader import data, wb

import fix_yahoo_finance as yf

yf.pdr_override()

import numpy as np

import datetime

import seaborn as sns

import matplotlib.pyplot as plt



And I get a feedback from my console with this error :
#Importing Modules/Libraries

import pandas as pd

pd.core.common.is_list_like = pd.api.types.is_list_like

from pandas_datareader import data, wb

import fix_yahoo_finance as yf

yf.pdr_override()

import numpy as np

import datetime

import seaborn as sns

import matplotlib.pyplot as plt

#Importing Historical data from yahoo finance

tickers = 

['XSLV','SMLV','XMLV','USMV','LGLV','SPLV','PRFZ','PXSC','FNDB','PXMC','PRF','QQ

EW','RSP','EQWL','EQAL','EWMC','EWSC',


'DWAS','MMTM','PDP','DWAQ','QUAL','SPHQ','^PHB','ACWV','IDLV','EELV','PDN','PXH'

,'QWLD','IQLT','IQDF','IDMO','EEMO',

  'PIZ','PIE']

indices = pd.DataFrame()

for t in tickers:indices[t]=data.get_data_yahoo(t, data_source='yahoo',start='2016-1-1')['Adj Close']
输出:

[                       0%                       ]

[*********************100%***********************]  1 of 1 downloaded

[                       0%                       ]

[*********************100%***********************]  1 of 1 downloaded

[                       0%                       ]

[*********************100%***********************]  1 of 1 downloaded

[                       0%                       ]

[*********************100%***********************]  1 of 1 downloaded

[                       0%                       ]

[*********************100%***********************]  1 of 1 downloaded

[                       0%                       ]

[*********************100%***********************]  1 of 1 downloaded

[                       0%                       ]

[*********************100%***********************]  1 of 1 downloaded

[                       0%                       ]

[*********************100%***********************]  1 of 1 downloaded

Traceback (most recent call last):

 File "<input>", line 18, in <module>

 File "C:\Users\TIM\PycharmProjects\BILLIONAIRE'S CLUB\venv\lib\site-

packages\fix_yahoo_finance\__init__.py", line 202, in download

'Close', 'Adj Close', 'Volume']]

 File "C:\Users\TIM\PycharmProjects\BILLIONAIRE'S CLUB\venv\lib\site-

packages\pandas\core\frame.py", line 2682, in __getitem__

return self._getitem_array(key)

 File "C:\Users\TIM\PycharmProjects\BILLIONAIRE'S CLUB\venv\lib\site-

packages\pandas\core\frame.py", line 2726, in _getitem_array

indexer = self.loc._convert_to_indexer(key, axis=1)

 File "C:\Users\TIM\PycharmProjects\BILLIONAIRE'S CLUB\venv\lib\site-

packages\pandas\core\indexing.py", line 1308, in _convert_to_indexer

obj, kind=self.name)

 File "C:\Users\TIM\PycharmProjects\BILLIONAIRE'S CLUB\venv\lib\site-

packages\pandas\core\indexes\multi.py", line 1968, in _convert_listlike_indexer

_, indexer = self.reindex(keyarr, level=level)

 File "C:\Users\TIM\PycharmProjects\BILLIONAIRE'S CLUB\venv\lib\site-

packages\pandas\core\indexes\multi.py", line 2057, in reindex

keep_order=False)

 File "C:\Users\TIM\PycharmProjects\BILLIONAIRE'S CLUB\venv\lib\site-

packages\pandas\core\indexes\base.py", line 3969, in _join_level

ngroups = 1 + new_lev_labels.max()

File "C:\Users\TIM\PycharmProjects\BILLIONAIRE'S CLUB\venv\lib\site-

packages\numpy\core\_methods.py", line 26, in _amax

return umr_maximum(a, axis, None, out, keepdims)

ValueError: zero-size array to reduction operation maximum which has no identity.
[0%]
[*******************************100%******************************************]下载了1个,共1个
[                       0%                       ]
[*******************************100%******************************************]下载了1个,共1个
[                       0%                       ]
[*******************************100%******************************************]下载了1个,共1个
[                       0%                       ]
[*******************************100%******************************************]下载了1个,共1个
[                       0%                       ]
[*******************************100%******************************************]下载了1个,共1个
[                       0%                       ]
[*******************************100%******************************************]下载了1个,共1个
[                       0%                       ]
[*******************************100%******************************************]下载了1个,共1个
[                       0%                       ]
[*******************************100%******************************************]下载了1个,共1个
回溯(最近一次呼叫最后一次):
文件“”,第18行,在
文件“C:\Users\TIM\PycharmProjects\亿万富翁俱乐部\venv\lib\site-
packages\fix\u yahoo\u finance\ \uuuu init\uuuuuuuuuuuuuuupy“,第202行,下载
“关闭”、“调整关闭”、“卷”]]
文件“C:\Users\TIM\PycharmProjects\亿万富翁俱乐部\venv\lib\site-
packages\pandas\core\frame.py”,第2682行,在__
返回self.\u getitem\u数组(键)
文件“C:\Users\TIM\PycharmProjects\亿万富翁俱乐部\venv\lib\site-
packages\pandas\core\frame.py”,第2726行,在\u getitem\u数组中
索引器=self.loc.\u转换为索引器(键,轴=1)
文件“C:\Users\TIM\PycharmProjects\亿万富翁俱乐部\venv\lib\site-
packages\pandas\core\index.py”,第1308行,在转换为索引器中
obj,kind=self.name)
文件“C:\Users\TIM\PycharmProjects\亿万富翁俱乐部\venv\lib\site-
packages\pandas\core\index\multi.py”,第1968行,在类似列表的索引器中
_,indexer=self.reindex(keyarr,level=level)
文件“C:\Users\TIM\PycharmProjects\亿万富翁俱乐部\venv\lib\site-
packages\pandas\core\indexes\multi.py”,第2057行,reindex格式
保持秩序(错误)
文件“C:\Users\TIM\PycharmProjects\亿万富翁俱乐部\venv\lib\site-
packages\pandas\core\index\base.py”,第3969行,处于连接级别
ngroups=1+新的水平标签。max()
文件“C:\Users\TIM\PycharmProjects\亿万富翁俱乐部\venv\lib\site-
packages\numpy\core\\ u methods.py”,amax中第26行
返回umr_最大值(a、轴、无、输出、保持)
ValueError:从零大小数组到没有标识的最大缩减操作。

这是雅虎设定的费率限制。您可以尝试传递以避免值错误

大概是这样的:

for ticker in tickers1:
    try:
        df = yahoo.download(self.TICK_SYMBOLS, start = self.START, end = datetime.now())
        df.reset_index(inplace = True)
        df.set_index("Date", inplace = True)

    except ValueError:
        pass

您需要指定结束日期。此外,日期必须采用“YYYY-MM-DD”格式

import fix_yahoo_finance as yahoo

spx_df = yahoo.download("^GSPC", "2015-01-01", "2019-04-28')
spx_df.Close.plot()

奇怪的是,从你的同一时间起,我就收到了同样的问题。我注意到,当yahoo没有返回时,就会出现这个错误。发生这种情况的原因可能是:雅虎不稳定、请求太多或股票代码名称错误(例如,我必须在末尾添加“.SA”的巴西股票代码),请阅读-总结是,这不是向志愿者致辞的理想方式,可能会对获得答案产生反作用。请不要把这个添加到你的问题中。嗨,哈弗。谢谢你的时间和分享你的经验。我直接从雅虎财务部复制和粘贴我的票务符号,并反复检查是否有错误。我怀疑这是否是一个问题,因为我实际上是从雅虎财务复制和粘贴票务符号。有没有人能够解决这个问题??我现在在雅虎股票上也遇到了同样的问题。