2017-08-03 38 views
-2

這裏是我的代碼收到此錯誤試圖檢索數據,從熊貓的DataReader

def competitor_stock_data_report(): 
    import datetime 
    import pandas_datareader.data as web 

    date_time = datetime.datetime.now() 
    date = date_time.date() 

    stocklist = ['LAZ','AMG','BEN','LM','EVR','GHL','HLI','MC','PJT','MS','GS','JPM','AB'] 
    start = datetime.datetime(date.year, date.month, date.day) 
    end = datetime.datetime(date.year-1, date.month, date.day) 

    for x in stocklist: 
     df = web.DataReader(x, 'google', start, end) 
     print(df['Close'].tail(n=1)) 
     print(df['Close'].head(n=1)) 

當我輸入靜態的日期,這應該工作。

這是錯誤我得到:

File "pandas\_libs\parsers.pyx", line 565, in pandas._libs.parsers.TextReader.__cinit__ (pandas\_libs\parsers.c:6260) 
pandas.errors.EmptyDataError: No columns to parse from file 

我該如何解決這個問題?

回答

1

end日期是start日期前:

start = datetime.datetime(date.year, date.month, date.day) 
end = datetime.datetime(date.year-1, date.month, date.day) 

它應該是:

start = datetime.datetime(date.year-1, date.month, date.day) 
end = datetime.datetime(date.year, date.month, date.day)