pandas 데이터 리더를 사용하는 yahoo 금융의 기능에 대해 질문이 있습니다. 지금은 주식 시세 표시기가있는 목록을 몇 달 동안 사용하고 있으며 다음 줄에서 실행합니다.
import pandas_datareader as pdr
import datetime
stocks = ["stock1","stock2",....]
start = datetime.datetime(2012,5,31)
end = datetime.datetime(2018,3,1)
f = pdr.DataReader(stocks, 'yahoo',start,end)
어제부터 "IndexError : list index out of range"라는 오류가 발생합니다.이 오류는 여러 주식을 얻으려고 할 때만 나타납니다.
최근에 제가 고려해야 할 사항이 변경되었거나 제 문제에 대한 더 나은 해결책이 있습니까?
해결 방법
v0.6.0 (2018 년 1 월 24 일)
Yahoo! , Google 옵션 , 견적 및 EDGAR 에 대한 즉각적인 지원 중단. The end points behind these APIs have radically changed and the existing readers require complete rewrites. In the case of most Yahoo! data the endpoints have been removed. PDR would like to restore these 기능 및 pull 요청을 환영합니다.
이것이 IndexError
(또는 다른 일반적으로 존재하지 않는 오류)가 발생하는 이유가 될 수 있습니다.
그러나 Yahoo! 지원을 수정하는 것을 목표로하는 또 다른 Python 패키지가 있습니다. Pandas DataReader를위한 금융, 여기에서 해당 패키지를 찾을 수 있습니다.
그들의 문서에 따르면 :
fix-yahoo-finance 는 Yahoo! 금융 사용 및 팬더 반환 DataFrame/Panel in the same format as pandas_datareader’s
get_data_yahoo ()
.기본적으로 "도용"하여
pandas_datareader.data.get_data_yahoo ()
method, fix-yahoo-finance’s implantation is easy and only requiresfix_yahoo_finance
를 코드로 가져옵니다.
추가해야 할 것은 다음과 같습니다.
from pandas_datareader import data as pdr
import fix_yahoo_finance as yf
yf.pdr_override()
stocks = ["stock1","stock2", ...]
start = datetime.datetime(2012,5,31)
end = datetime.datetime(2018,3,1)
f = pdr.get_data_yahoo(stocks, start=start, end=end)
또는 Pandas DataReader 없이도 :
import fix_yahoo_finance as yf
stocks = ["stock1","stock2", ...]
start = datetime.datetime(2012,5,31)
end = datetime.datetime(2018,3,1)
data = yf.download(stocks, start=start, end=end)
참조 페이지 https://stackoverflow.com/questions/49705047
'파이썬' 카테고리의 다른 글
파이썬에서 문자열의 크기를 얻는 방법? (0) | 2020.10.12 |
---|---|
파이썬 TypeError : 문자열 인덱스는 정수 여야합니다 (Python). (0) | 2020.10.12 |
파이썬 목록에서 여러 요소 삭제 (0) | 2020.10.12 |
파이썬의 요구 사항을 충족하는 버전을 찾을 수 없습니다. (0) | 2020.10.12 |
파이썬 Pytorch 텐서에서 numpy 배열로 (0) | 2020.10.12 |
댓글