我可以在spyder ide中导入pandas包;但是,如果我尝试打开一个新的juypter笔记本,导入失败。
我在MAC OS X上使用Anaconda软件包分发。
以下是我的工作:
In [1]: import pandas
这是我得到的回应:
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-5-97925edf8fb0> in <module>()
----> 1 import pandas
//anaconda/lib/python2.7/site-packages/pandas/__init__.py in <module>()
11 "pandas from the source directory, you may need to run "
12 "'python setup.py build_ext --inplace' to build the C "
---> 13 "extensions first.".format(module))
14
15 from datetime import datetime
ImportError: C extension: hashtable not built. If you want to import pandas from the source directory, you may need to run 'python setup.py build_ext --inplace' to build the C extensions first.
答案 0 :(得分:9)
您安装了多个Python 2引擎。一个位于主操作系统平台,另一个位于Anaconda的虚拟环境中。你需要在后者上安装Panda。
在Bash提示符下运行:
which python
然后在Jupyter / IPython中运行以下命令,并将结果与从Bash脚本中获得的输出进行比较:
from sys import executable
print(executable)
如果它们不同,您应该注意后者的结果(即复制它),然后转到Bash提示符,并执行以下操作:
<the 2nd output> -m pip install pandas
所以喜欢这个:
/usr/bin/anaconda/python2 -m pip install pandas
将为您的Anaconda Python安装Pandas。
有一种方法可以使用sys.path.append('path to alternative locations')
将库路径添加到现有环境中,但每次想要使用备用环境时都必须这样做,因为效果是临时的。
您也可以在主环境中安装所有内容:
python -m pip install cython scipy panda matplotlib jupyter notebook ipython
根据对上述部分的回应:
像这样安装homebrew
:
在您的终端中:
xcode-select --install
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
然后运行:
brew doctor
brew update
brew upgrade
现在继续安装Python 2到Brew:
brew install python
或Python 3
brew install python3
或两者都做。安装其他有用的东西!
brew install git conda gfortran clang pkg-config
然后,您可以继续使用brew或使用pip
安装所需的库,但首先应确保已安装pip
本身。
easy_install pip
然后你就可以像这样安装Python包(NumPy包含在SciPy中,而SciPy和Matplotlib依赖于Cython和C,Scipy还使用fortran进行ODE):
python2 -m install cython scipy pandas matplotlib jupyter
你可以为Python 3做同样的事情。
这个干净的安装应该真正解决问题。如果没有,请从Python.org下载Python并重新安装。 brew
如果发现程序包已经存在,则有时会拒绝安装程序包。我不建议删除Python 2,以便您可以通过brew
安装它。这可能会导致OS X出现问题。因此,最好的替代方法是通过安装从网站下载的软件包来修复现有安装。 OS X确保将软件包安装在正确的位置。完成后,您可以返回说明,但从brew install python3
开始。
答案 1 :(得分:5)
我在使用Anaconda(Python 2)的Mac OS X上遇到了同样的问题。我尝试在python repl中导入pandas包,并收到此错误:
ValueError: unknown locale: UTF-8
因此,我已将以下几行添加到〜/ .bash_profile中:
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
这解决了我的问题。
答案 2 :(得分:0)
您可以做的一件事是直接在Jupyter中安装库,您可以尝试在单元格中进行尝试:
!pip install pandas
或
!pip3 install pandas