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”的巴西股票代码),请阅读-总结是,这不是向志愿者致辞的理想方式,可能会对获得答案产生反作用。请不要把这个添加到你的问题中。嗨,哈弗。谢谢你的时间和分享你的经验。我直接从雅虎财务部复制和粘贴我的票务符号,并反复检查是否有错误。我怀疑这是否是一个问题,因为我实际上是从雅虎财务复制和粘贴票务符号。有没有人能够解决这个问题??我现在在雅虎股票上也遇到了同样的问题。