我已经在 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(使用前将#替换为@)