python pandas installation issues
You have multiple versions of Python 2.7. You installed pandas
for one version, and then tried to import it into the other, and you can't do that, because they have separate site libraries.
If you need multiple versions of Python 2.7 for some reason, you have to learn how to manage multiple versions of Python. For example, always be sure whether you're using /usr/bin/easy_install
or /usr/local/bin/easy_install
, and use the one that goes with the python
you plan to run.
But you probably don't need multiple versions. If you just uninstall the non-Apple one, everything will be a lot easier.
You can figure out the details from the paths in your logs. The manual install went to /Library/Python/2.7/site-packages
, which is where Apple's /usr/bin/python
looks. But the easy_install
went to /usr/local/lib/python/2.7/site-packages
, which is where the third-party (presumably Homebrew, from the brew
tag?) /usr/local/bin/python
. So clearly, the first python
on your path is /usr/bin/python
, while the first easy_install
is /usr/local/bin/easy_install
. That's going to lead to confusion, as it did here.
Even worse, if you install ipython
into both Pythons, whichever one you install second is going to end up as /usr/local/bin/ipython
, which is going to lead to even more confusion.
If you do sudo /usr/bin/easy_install pandas
, you can use pandas
in the Apple Python. To make sure that's the one you run, always do /usr/bin/python
or /usr/bin/python /usr/local/bin/ipython
. If you do sudo /usr/local/bin/easy_install pandas
, you can use pandas
in the third-party Python. To make sure that's the one you run, always do /usr/local/bin/python
or /usr/local/bin/python /usr/local/bin/ipython
.
Looking at your comments, and your more detailed edit, it's possible that you actually have two third-party Pythons here, which makes things even more confusing. If both of them prefer /usr/local/bin
(and unless you're using MacPorts or Fink, they do), you've probably got one of them half-overwritten by the other, and there's just no way you're going to get this working. If that's the case, I would recommend that you do something radical. If you're not willing to do an install-from-scratch-with-settings-import of OS X, at least rm -rf /usr/local /Library/Python ~/Library/Python
, then reinstall brew
and any other third-party stuff you need, and this time make sure to only install one extra Python (although zero would still be better!).
Meanwhile, two minor side notes:
It's almost always better to use
pip
thaneasy_install
. If you don't have it,sudo easy_install pip
, and now you do. (The only common exceptions to that "almost" are forpip
itself, and forreadline
.)Don't use
sudo
with Homebrew. Homebrew goes through a lot of trouble to set up all of the directories it touches so you never needsudo
. Once you start doingsudo brew
,sudo /usr/local/bin/easy_install
, etc., you end up breaking that, so later installations get permissions errors, and it takes a lot of work withbrew doctor
to fix everything.
sgt pepper
Updated on June 14, 2022Comments
-
sgt pepper almost 2 years
I have tried installing from
- source (
python setup.py install
into the extracted tar ball dir) - using
pip
- using
easy_install
but nothing seems to work...I have downloaded and upgraded xcode, installed command-line tools..
I cloned the github repository for pandas
cd ../pandas python setup.py install running install running bdist_egg running egg_info writing requirements to pandas.egg-info/requires.txt writing pandas.egg-info/PKG-INFO writing top-level names to pandas.egg-info/top_level.txt writing dependency_links to pandas.egg-info/dependency_links.txt reading manifest file 'pandas.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no files found matching 'setupegg.py' no previously-included directories found matching 'doc/build' warning: no previously-included files matching '*.so' found anywhere in distribution warning: no previously-included files matching '*.pyd' found anywhere in distribution warning: no previously-included files matching '*.pyc' found anywhere in distribution warning: no previously-included files matching '.DS_Store' found anywhere in distribution writing manifest file 'pandas.egg-info/SOURCES.txt' installing library code to build/bdist.macosx-10.6-intel/egg running install_lib running build_py copying pandas/version.py -> build/lib.macosx-10.6-intel-2.7/pandas running build_ext **gcc-4.2 not found, using clang instead** building 'pandas.index' extension clang -fno-strict-aliasing -fno-common -dynamic -arch i386 -arch x86_64 -g -O2 -DNDEBUG -g -O3 -I/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/numpy/core/include -Ipandas/src/klib -Ipandas/src -I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c pandas/index.c -o build/temp.macosx-10.6-intel-2.7/pandas/index.o In file included from pandas/index.c:260: In file included from pandas/src/klib/khash_python.h:3: pandas/src/klib/khash.h:573:1: warning: expression result unused [-Wunused-value] KHASH_MAP_INIT_STR(str, size_t) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ pandas/src/klib/khash.h:565:2: note: expanded from macro 'KHASH_MAP_INIT_STR' KHASH_INIT(name, kh_cstr_t, khval_t, 1, kh_str_hash_func, kh_str_hash_equal) ^
---more output like that...and in the end
Installed /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site- packages/pandas-0.10.1.dev_c934e02-py2.7-macosx-10.6-intel.egg Processing dependencies for pandas==0.10.1.dev-c934e02 Searching for pytz Reading http://pypi.python.org/simple/pytz/ Reading http://pytz.sourceforge.net Reading http://sourceforge.net/project/showfiles.php?group_id=79122 Reading http://www.stuartbishop.net/Software/pytz Reading http://sourceforge.net/projects/pytz/ Best match: pytz 2012h Downloading http://pypi.python.org/packages/2.7/p/pytz/pytz-2012h-py2.7.egg#md5=4258fcfc023e9ff0057405d935fc6e1d Processing pytz-2012h-py2.7.egg creating /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pytz-2012h-py2.7.egg Extracting pytz-2012h-py2.7.egg to /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages Adding pytz 2012h to easy-install.pth file Installed /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pytz-2012h-py2.7.egg ----- Installed /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/six-1.2.0-py2.7.egg Searching for numpy==1.6.2 Best match: numpy 1.6.2 Adding numpy 1.6.2 to easy-install.pth file Using /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages Finished processing dependencies for pandas==0.10.1.dev-c934e02 ipython Python 2.7.3 (v2.7.3:70274d53c1dd, Apr 9 2012, 20:52:43) Type "copyright", "credits" or "license" for more information. IPython 0.14.dev -- An enhanced Interactive Python. ? -> Introduction and overview of IPython's features. %quickref -> Quick reference. help -> Python's own help system. object? -> Details about 'object', use 'object??' for extra details. In [1]: import pandas
seems to work without issues..
when i use easy_install to install pandas, the on-screen output seems to suggest that it worked but on loading, python is not able to find the library
sudo easy_install pandas Searching for pandas Best match: pandas 0.10.1.dev-c934e02 Processing pandas-0.10.1.dev_c934e02-py2.7-macosx-10.8-intel.egg pandas 0.10.1.dev-c934e02 is already the active version in easy-install.pth Using /usr/local/lib/python2.7/site-packages/pandas-0.10.1.dev_c934e02-py2.7-macosx-10.8-intel.egg Processing dependencies for pandas Finished processing dependencies for pandas dekumar-mn:ipython dekumar$ python Python 2.7.3 (v2.7.3:70274d53c1dd, Apr 9 2012, 20:52:43) [GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> import pandas as pd Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named pandas
- source (