'How to fix Python Numpy/Pandas installation?
I would like to install Python Pandas library (0.8.1) on Mac OS X 10.6.8. This library needs Numpy>=1.6.
I tried this
$ sudo easy_install pandas
Searching for pandas
Reading http://pypi.python.org/simple/pandas/
Reading http://pandas.pydata.org
Reading http://pandas.sourceforge.net
Best match: pandas 0.8.1
Downloading http://pypi.python.org/packages/source/p/pandas/pandas-0.8.1.zip#md5=d2c5c5bea971cd760b0ae6f6850fcb74
Processing pandas-0.8.1.zip
Running pandas-0.8.1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-ckAMym/pandas-0.8.1/egg-dist-tmp-0mlL7t
error: Setup script exited with pandas requires NumPy >= 1.6 due to datetime64 dependency
So I tried to install Numpy
$ sudo easy_install numpy
Searching for numpy
Best match: numpy 1.6.2
Adding numpy 1.6.2 to easy-install.pth file
Using /Library/Python/2.6/site-packages
Processing dependencies for numpy
Finished processing dependencies for numpy
So I tried again
$ sudo easy_install pandas
But the problem is still the same !
error: Setup script exited with pandas requires NumPy >= 1.6 due to datetime64 dependency
I run Python
$ python
Python 2.6.1 (r261:67515, Jun 24 2010, 21:47:49)
[GCC 4.2.1 (Apple Inc. build 5646)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy as np
>>> np.__version__
'1.2.1'
So Numpy 1.6 doesn't seems to be installed correctly !
I tried to install Numpy 1.6 with pip
(instead of easy_install
)...
$ sudo pip install numpy
Requirement already satisfied (use --upgrade to upgrade): numpy in /Library/Python/2.6/site-packages
Cleaning up...
I added --upgrade
flag
$ sudo pip install numpy --upgrade
Requirement already up-to-date: numpy in /Library/Python/2.6/site-packages
Cleaning up...
$ sudo pip install pandas
Downloading/unpacking pandas
Downloading pandas-0.8.1.zip (1.9MB): 1.9MB downloaded
Running setup.py egg_info for package pandas
pandas requires NumPy >= 1.6 due to datetime64 dependency
Complete output from command python setup.py egg_info:
pandas requires NumPy >= 1.6 due to datetime64 dependency
----------------------------------------
Command python setup.py egg_info failed with error code 1 in /tmp/pip-build/pandas
Storing complete log in /Users/MyUsername/Library/Logs/pip.log
I also tried to install binary version of Numpy http://sourceforge.net/projects/numpy/files/ numpy-1.6.2-py2.6-python.org-macosx10.3.dmg but it fails !!! (installer said me that numpy 1.6.2 can't be install on this disk. Numpy requires python.org Python 2.6 to install.
Solution 1:[1]
Don't know if you solved the problem but if anyone has this problem in future.
$python
>>import numpy
>>print(numpy)
Go to the location printed and delete the numpy
installation found there. You can then use pip
or easy_install
Solution 2:[2]
I had this exact problem.
The issue is that there is an old version of numpy in the default mac install, and that pip install pandas
sees that one first and fails -- not going on to see that there is a newer version that pip
herself has installed.
If you're on a default mac install, and you've done pip install numpy --upgrade
to be sure you're up to date, but pip install pandas
still fails due to an old numpy
, try the following:
$ cd /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/
$ sudo rm -r numpy
$ pip install pandas
This should now install / build pandas.
To check it out what we've done, do the following: start python, and import numpy
and import pandas
. With any luck, numpy.__version__
will be 1.6.2 (or greater), and pandas.__version__
will be 0.9.1 (or greater).
If you'd like to see where pip has put (found!) them, just print(numpy)
and print(pandas)
.
Solution 3:[3]
I work with the guys that created Anaconda Python. You can install multiple versions of python and numpy without corrupting your system python. It's free and open source (OSX, linux, Windows). The paid packages are enhancements on top of the free version. Pandas is included.
conda create --name np17py27 anaconda=1.4 numpy=1.7 python=2.7
export PATH=~/anaconda/envs/np17py27/bin:$PATH
If you want numpy 1.6:
conda create --name np16py27 anaconda=1.4 numpy=1.6 python=2.7
Setting your PATH sets up where to find python and ipython. The environments (np17py27) can be named whatever you would like.
Solution 4:[4]
This worked for me under 10.7.5 with EPD_free-7.3-2 from Enthought:
Install EPD free, then follow the step in the following link to create .bash_profile file.
http://redfinsolutions.com/blog/creating-bashprofile-your-mac
And add the following to the file.
PATH="/Library/Frameworks/Python.framework/Versions/Current/bin:$(PATH)}"
export PATH
Execute the following command in Terminal
$ sudo easy_install pandas
When finished, launch PyLab and type:
In [1]: import pandas
In [2]: plot(arange(10))
This should open a plot with a diagonal straight line.
Solution 5:[5]
If you're like me and you don't like the idea of deleting things that were part of the standard system installation (which others have suggested) then you might like the solution I ended up using:
- Get Homebrew - it's a one-line shell script to install!
- Edit your
.profile
, or whatever is appropriate, and put/usr/local/bin
at the start of yourPATH
so that Homebrew binaries are found before system binaries brew install python
- this installs a newer version of python in/usr/local
pip install pandas
This worked for me in OS X 10.8.2, and I can't see any reason it shouldn't work in 10.6.8.
Solution 6:[6]
You probably have another Numpy version installed on your system,
try to query your numpy version and retrieve it if your distribution does not support it.
aka debian/unbuntu/Mint version can query mostly from dpkg package manger :
dpkg --get-selections | egrep -i "numpy"
, you can see actual Numpy version.
Some having apt can either asking to removing it by doing this: apt-get remove numpy.
Some having distribution like Fedora, RedHat and any compatible release under RedHat model can use rpm as well to query the installation.
This is happening by telling to Numpy installer to install itself in current
/usr/local/lib/python[VERSION]/dist-packages
over Linux env andc:[...]\python[VERSION]\site-packages
for windows. Having probably One version of Numpy installed in /usr/local/python[VERSION]/dist-packages, this one will be instantiated first.- .pth file hold information about path location of specific python module, but erasing a component from packages may corrupt it...
Be careful, and you will have to remove the package and all it's dependency... really painful in some case.
Visiting lunchad.net may save you time sometimes they had new versions from some packages.
Solution 7:[7]
I had the same problem and, in my case, the problem was that python was looking for packages in some ordered locations, first of all the default computer one where default old packages are.
To check what your python is looking for you can do:
>>> import sys
>>> print '\n'.join(sys.path)
This was outputting the directory '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python' before pip or brew or port folders.
The simple solution is:
export PYTHONPATH="/Library/Python/2.7/site-packages:$PYTHONPATH"
This worked well for me, I advise you to add this line to your home bash_profile file for the next time. Remember that sys.path is built using the current working directory, followed by the directories in the PYTHONPATH environment variable. Then there are the installation-dependent default dirs.
Solution 8:[8]
If you are using a version of enthought python (EPD) you might want to go directly to your site-packages and reinstall numpy. Then try to install pandas with pip. You will have to modify your installation prefix for that.
If the problem persists (as it did with me) try downloading pandas tar ball, unpack it in your site packages and run setup.py install
from your pandas directory.
If you got your dependencies right you can import pandas and check it imports smoothly.
Solution 9:[9]
he easiest way to install Pandas, like almost every other package for Python, is with pip.
Many packages (including Pandas) require a compiler, and a bunch of third-party DLLs, and many Windows users don't know how to deal with that. That's exactly why the "wheel" format was created: so packages can upload pre-built binaries.
Not every project has pre-built binary wheels for Windows yet. But you can look at Christoph Gohlke's site and find wheels for all of the most popular ones. Just follow the instructions on that page to download the wheel file and install it with pip.
But in the case of Pandas, you don't have to do that. They have wheels on their download page, and uploaded to PyPI. And the documentation tells you to use these. (Well, it first suggests you use Anaconda/Miniconda, but if you want a stock Python, use pip and the packages on PyPI.) it worked for me ...on windows 7 64 bit ,python 3.4
Solution 10:[10]
What works really well for me was to install pandas in a virtual env like this:
// create your virtualenv folder
python3 -m venv your-virtualenv-folder
// activate your virtualenv folder
source your-virtualenv-folder/bin/activate
// install pandas on your new virtualenv folder
python -m pip install pandas
// run your python file
python index.py
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow