1.開始入門Pandas,然后跟着網上的例子,編寫以下代碼:
import pandas as pd import datetime import pandas.io.data as web start = datetime.datetime(2010,1,1) end = datetime.datetime(2015,8,22) df = web.DataReader('XOM','yahoo',start,end) print(df)
2.一運行報錯信息為:ModuleNotFoundError: No module named 'pandas.io.data'
3.查找網上教程,發現pandas.io.data已經用不成了,得替換為pandas_datareader,故在dos命令輸入:pip3 install pandas_datareader,在pycharm-setting導入
4.修改后的代碼如下所示:
import pandas as pd import datetime import pandas_datareader.data as web start = datetime.datetime(2010,1,1) end = datetime.datetime(2015,8,22) df = web.DataReader('XOM','yahoo',start,end) print(df)
5.依舊報錯:ImportError: cannot import name 'is_list_like'
6.查找網上教程后,需要去fred.py中修改信息,在pycharm報錯信息中,點擊C:\Users\Adinistrator\venv\Demo4\lib\site-packages\pandas_datareader\fred.py中,將from pandas.core.common import is_list_like替換為:from pandas.api.types import is_list_like(正確方式)
7.繼續修改代碼后,運行,依舊報錯,報錯信息如下:
8.依舊尋找教程,發現錯誤原因為:Yahoo的數據源已經失效,使用另一個數據源即可,最后代碼如下所示:
import pandas as pd import datetime import pandas_datareader.data as web start = datetime.datetime(2010,1,1) end = datetime.datetime(2015,8,22) df = web.DataReader('F-F_Research_Data_factors','famafrench',start,end) print(df)