导入 pandas 显示 ImportError: 无法导入名称哈希表

2024-05-19

我已经在 python 3.3 上安装了 pandas,代码如下:

import csv
import pandas
from pandas import DataFrame

csvdata = pandas.read_csv('datafile.csv')
df = DataFrame(csvdata)

它带有以下错误消息:

cannot import name hashtable
Traceback (most recent call last):
  File "C:\Users\document\test4.py", line 5, in <module>
    import pandas
  File "C:\Python33\lib\site-packages\pandas\__init__.py", line 6, in <module>
    from . import hashtable, tslib, lib
ImportError: cannot import name hashtable

谁能帮我弄清楚如何解决这个错误? Python和pandas已成功安装。


更新:我现在建议使用安装科学Python堆栈Anaconda http://docs.continuum.io/anaconda/.

Pandas 是捆绑的,可以使用 conda 轻松更新:

conda update pandas

它还与 cython、scipy(通过 pip 安装很棘手)、statsmodels 捆绑在一起,并为您管理这些包之间的依赖关系/关系。

值得强调的是,您不需要 admin/sudo 访问权限即可将其安装在安装 Anaconda 的计算机上。


如果您不使用 Anaconda,推荐的方法是安装熊猫 http://pandas.pydata.org/pandas-docs/stable/install.html#overview通过 pip(在 Mac 和 Windows 上):

pip install pandas

在 Linux 上,您还可以安装python-pandas无论在哪个存储库中,但请注意您可能正在安装旧版本的 pandas,理想情况下您应该使用最新的稳定版本。


看起来你已经尝试过从源安装 http://pandas.pydata.org/pandas-docs/stable/install.html#installing-from-source,文档提到:

从 git 存储库安装需要最近安装 Cython,因为 cythonized C 源代码不再签入源代码管理。发布的源代码发行版将包含构建的 C 文件。我建议通过安装最新的 Cythoneasy_install -U Cython

注意你将无法导入 pandas如果您在源目录中打开解释器除非你就地构建 C 扩展:

python setup.py build_ext --inplace

无需编译hashtables.pyx https://github.com/pydata/pandas/tree/master/pandas(以及其他一些 cython 文件),pandas 无法导入它们。这些是 pandas 所必需的(这解释了您的错误消息)。

注:这个从 0.11.1 开始,错误消息已变得更具描述性 https://github.com/pydata/pandas/pull/3827,它会说 C 扩展尚未构建。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

导入 pandas 显示 ImportError: 无法导入名称哈希表 的相关文章

随机推荐