Python3: 导入 pandas_datareader ImportError

Python3: import pandas_datareader ImportError

我是 Python 的新手,但已经安装了 Python 3.6,并且 运行 完美地安装了一些其他程序。我正在尝试使用 pandas_datareader 模块提取数据,但仍 运行ning 解决此问题。操作系统:OSX.I 访问过其他类似错误的线程并尝试了他们的方法无济于事。

其他问题:使用 Sublime Text 时,如果我 运行 它作为 Python(而不是 Python3)构建,它的功能很好,但我所有其他附带的程序写在 Python3 上。有没有一种方法可以让我在 3.6 上运行我所缺少的?

我已经访问了 'is_list_like' 错误问题,并在导入行中将 fred.py 文件更改为 pandas.api.types。

Traceback (most recent call last):
  File 
"/Users/scottgolightly/Desktop/python_work/data_read_practice.py", line 
3, in <module>
    import pandas_datareader.data as web
  File 
"/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site- 
packages/pandas_datareader/__init__.py", line 2, in <module>
    from .data import (DataReader, Options, get_components_yahoo,
  File 
"/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site- 
packages/pandas_datareader/data.py", line 14, in <module>
    from pandas_datareader.fred import FredReader
  File 
"/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site- 
packages/pandas_datareader/fred.py", line 1, in <module>
    from pandas.core.common import is_list_like
ImportError: cannot import name 'is_list_like'

如前所述,is_list_like 已从 pandas.core.common 移至 pandas.api.types

你有几条前进的道路。

  1. 我(强烈)推荐的解决方案:下载 Conda 并设置一个环境,版本为 Pandas v0.23.0 之前的版本。

  2. 你可以安装Pandas的开发版,打好补丁:

    pip install git+https://github.com/pydata/pandas-datareader.git

  3. 既然你说你有一个在不同环境中工作的 Pandas 版本,我怀疑调用它的 Python 是版本 2.X。如果是这样,请尝试使用 past.autotranslate 导入旧版本的 Pandas。

  4. 如果 Pandas 的这个工作版本实际上属于 Python 3.X 站点包,那么您可以使用以下方式手动导入它:

    sys.path.insert(0, '/path/to/other/pandas')

小的解决方法是像这样定义它:

import pandas as pd
pd.core.common.is_list_like = pd.api.types.is_list_like
import pandas_datareader