SymbolWarning:无法读取替换为 NaN 的符号
SymbolWarning: Failed to read symbol replacing with NaN
我正在尝试使用 pandas 下载所有斯德哥尔摩大盘股的历史股票数据。它工作正常,但对于某些股票却没有。
import pandas_datareader.data as pdr
import datetime
import csv
with open('stockholm_largecap.csv', 'rb') as f:
reader = csv.reader(f)
stockholmLargeCap = list(reader)
start = datetime.datetime(1970, 1, 1)
end = datetime.datetime.today();
stockData = {}
for symbol in stockholmLargeCap:
f = pdr.DataReader(symbol, 'yahoo', start, end)
print f
stockholm_largecap.csv 包含按字母顺序排列的所有股票,但一旦我到达某些股票,我就会得到(例如 BETS-B.ST):SymbolWarning:无法读取代码:'BETS-B.ST' , 替换为 NaN。并且脚本终止。有什么方法可以继续程序,忽略错误以及某些股票无法正常工作的原因是什么?
raise RemoteDataError(msg.format(self.__class__.__name__))
pandas_datareader._utils.RemoteDataError: No data fetched using 'YahooDailyReader'
使用try
和except
import pandas_datareader.data as pdr
for symbol in ['SPY', 'holla']:
try:
f = pdr.DataReader(symbol, 'yahoo', "2001-01-01", "2010-01-01")
print f.head(5)
except:
print ('did not find: '+symbol)
Open High Low Close Volume Adj Close
Date
2001-01-02 132.0000 132.1562 127.5625 128.8125 8737500 95.2724
2001-01-03 128.3125 136.0000 127.6562 135.0000 19431600 99.8488
2001-01-04 134.9375 135.4687 133.0000 133.5468 9219000 98.7740
2001-01-05 133.4687 133.6250 129.1875 129.1875 12911400 95.5497
2001-01-08 129.8750 130.1875 127.6875 130.1875 6625300 96.2893
did not find: holla
我在尝试从列表中获取股票时遇到了同样的问题,我使用了异常处理块,它继续执行代码,尽管有符号警告即。[ SymbolWarning:无法读取符号:'AXZZW',替换为 NaN。
warnings.warn(msg.format(sym), SymbolWarning)]
from pandas_datareader._utils import RemoteDataError
from pandas_datareader.data import Options
try:
df1 = web.DataReader(rows[i],'yahoo',"2001-01-01","2010-01-01")
print("Downloading",i,"/",len(rows),"............")
print(df1)
except KeyError:
print("Data not found at Ticker %s"%i)
continue
except RemoteDataError:
print("Data not found at Ticker %s"%i)
continue
print("Success!")
希望这对你也有用!
我正在尝试使用 pandas 下载所有斯德哥尔摩大盘股的历史股票数据。它工作正常,但对于某些股票却没有。
import pandas_datareader.data as pdr
import datetime
import csv
with open('stockholm_largecap.csv', 'rb') as f:
reader = csv.reader(f)
stockholmLargeCap = list(reader)
start = datetime.datetime(1970, 1, 1)
end = datetime.datetime.today();
stockData = {}
for symbol in stockholmLargeCap:
f = pdr.DataReader(symbol, 'yahoo', start, end)
print f
stockholm_largecap.csv 包含按字母顺序排列的所有股票,但一旦我到达某些股票,我就会得到(例如 BETS-B.ST):SymbolWarning:无法读取代码:'BETS-B.ST' , 替换为 NaN。并且脚本终止。有什么方法可以继续程序,忽略错误以及某些股票无法正常工作的原因是什么?
raise RemoteDataError(msg.format(self.__class__.__name__))
pandas_datareader._utils.RemoteDataError: No data fetched using 'YahooDailyReader'
使用try
和except
import pandas_datareader.data as pdr
for symbol in ['SPY', 'holla']:
try:
f = pdr.DataReader(symbol, 'yahoo', "2001-01-01", "2010-01-01")
print f.head(5)
except:
print ('did not find: '+symbol)
Open High Low Close Volume Adj Close
Date
2001-01-02 132.0000 132.1562 127.5625 128.8125 8737500 95.2724
2001-01-03 128.3125 136.0000 127.6562 135.0000 19431600 99.8488
2001-01-04 134.9375 135.4687 133.0000 133.5468 9219000 98.7740
2001-01-05 133.4687 133.6250 129.1875 129.1875 12911400 95.5497
2001-01-08 129.8750 130.1875 127.6875 130.1875 6625300 96.2893
did not find: holla
我在尝试从列表中获取股票时遇到了同样的问题,我使用了异常处理块,它继续执行代码,尽管有符号警告即。[ SymbolWarning:无法读取符号:'AXZZW',替换为 NaN。 warnings.warn(msg.format(sym), SymbolWarning)]
from pandas_datareader._utils import RemoteDataError
from pandas_datareader.data import Options
try:
df1 = web.DataReader(rows[i],'yahoo',"2001-01-01","2010-01-01")
print("Downloading",i,"/",len(rows),"............")
print(df1)
except KeyError:
print("Data not found at Ticker %s"%i)
continue
except RemoteDataError:
print("Data not found at Ticker %s"%i)
continue
print("Success!")
希望这对你也有用!