pandas_datareaderをインポート時にエラーが発生する場合の解消方法
2018年7月現在、Pandas DataReaderをインポートしようとすると「ImportError: cannot import name ‘is_list_like’」というエラーが発生しています。このエラーはモジュールの次期リリースで解決するかもしれませんが、現時点ではソースコードを1箇所修正する必要があります。
エラーの例
ImportError Traceback (most recent call last) in () ----> 1 import pandas_datareader.data as pdr 2 3 start = '1949/05/16' 4 end = '2018/07/13' 5 /anaconda3/lib/python3.6/site-packages/pandas_datareader/__init__.py in () 1 from ._version import get_versions ----> 2 from .data import (DataReader, Options, get_components_yahoo, 3 get_dailysummary_iex, get_data_enigma, get_data_famafrench, 4 get_data_fred, get_data_google, get_data_moex, 5 get_data_morningstar, get_data_quandl, get_data_stooq, /anaconda3/lib/python3.6/site-packages/pandas_datareader/data.py in () 12 ImmediateDeprecationError 13 from pandas_datareader.famafrench import FamaFrenchReader ---> 14 from pandas_datareader.fred import FredReader 15 from pandas_datareader.google.daily import GoogleDailyReader 16 from pandas_datareader.google.options import Options as GoogleOptions /anaconda3/lib/python3.6/site-packages/pandas_datareader/fred.py in () ----> 1 from pandas.core.common import is_list_like 2 from pandas import concat, read_csv 3 4 from pandas_datareader.base import _BaseReader ImportError: cannot import name 'is_list_like'
解消方法
/anaconda3/lib/python3.6/site-packages/pandas_datareader/fred.py(Windowsの場合は適宜読み替えてください)をエディタで開き、1行目をコメントアウトし「from pandas.api.types import is_list_like」を追記してください。
#from pandas.core.common import is_list_like from pandas.api.types import is_list_like
参照
import pandas_datareader gives ImportError: cannot import name ‘is_list_like’ – stack overflow