Как исправить установку Python Numpy/Pandas?
Я хотел бы установить Python Pandas library (0.8.1) в Mac OS X 10.6.8. Для этой библиотеки требуется Numpy >= 1.6.
Я пробовал это
$ 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
Итак, я попытался установить 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
Итак, я попробовал еще раз
$ sudo easy_install pandas
Но проблема все та же!
error: Setup script exited with pandas requires NumPy >= 1.6 due to datetime64 dependency
Я запускаю 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'
Так что Numpy 1.6, похоже, не установлен правильно!
Я попытался установить Numpy 1.6 с pip
(вместо easy_install
)...
$ sudo pip install numpy
Requirement already satisfied (use --upgrade to upgrade): numpy in /Library/Python/2.6/site-packages
Cleaning up...
Я добавил флаг --upgrade
$ 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
Я также попытался установить двоичную версию Numpy http://sourceforge.net/projects/numpy/files/
numpy-1.6.2-py2.6-python.org-macosx10.3.dmg, но он не работает!!! (установщик сказал мне, что numpy 1.6.2 не может быть установлен на этом диске. Для работы с Numpy требуется установить python.org Python 2.6.
Ответы
Ответ 1
Не знаю, решила ли вы проблему, но если у кого-то есть эта проблема в будущем.
$python
>>import numpy
>>print(numpy)
Перейдите в указанное место и удалите найденную там установку numpy
. Затем вы можете использовать pip
или easy_install
Ответ 2
У меня была эта точная проблема.
Проблема заключается в том, что в стандартной установке mac установлена старая версия numpy и что pip install pandas
видит это первым и не работает - не будет видно, что есть более новая версия, которая сама pip
установлен.
Если вы используете Mac по умолчанию, и вы сделали pip install numpy --upgrade
, чтобы быть в курсе последних событий, но pip install pandas
по-прежнему не удается из-за старого numpy
, попробуйте следующее:
$ cd /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/
$ sudo rm -r numpy
$ pip install pandas
Теперь это должно установить /build pandas.
Чтобы проверить, что мы сделали, сделайте следующее: запустите python и import numpy
и import pandas
. Если повезет, numpy.__version__
будет 1.6.2 (или больше), а pandas.__version__
будет 0.9.1 (или больше).
Если вы хотите увидеть, где pip поставил (нашел!) их, просто print(numpy)
и print(pandas)
.
Ответ 3
Я работаю с ребятами, которые создали Anaconda Python. Вы можете установить несколько версий python и numpy, не повреждая системный python. Это бесплатный и открытый исходный код (OSX, Linux, Windows). Платные пакеты - это усовершенствования поверх бесплатной версии. Pandas.
conda create --name np17py27 anaconda=1.4 numpy=1.7 python=2.7
export PATH=~/anaconda/envs/np17py27/bin:$PATH
Если вы хотите numpy 1.6:
conda create --name np16py27 anaconda=1.4 numpy=1.6 python=2.7
Настройка PATH устанавливает, где найти python и ipython. Среда (np17py27) может быть названа так, как вам хотелось бы.
Ответ 4
Это работало для меня под 10.7.5 с EPD_free-7.3-2 от Enthought:
Установите EPD бесплатно, затем следуйте шагу по следующей ссылке, чтобы создать файл .bash_profile.
http://redfinsolutions.com/blog/creating-bashprofile-your-mac
И добавьте в файл следующее.
PATH="/Library/Frameworks/Python.framework/Versions/Current/bin:$(PATH)}"
export PATH
Выполните следующую команду в терминале
$ sudo easy_install pandas
По завершении запустите PyLab и введите:
In [1]: import pandas
In [2]: plot(arange(10))
Это должно открыть график с диагональной прямой.
Ответ 5
Если вы похожи на меня, и вам не нравится идея удалить вещи, которые были частью стандартной установки системы (что другие предложили), вам может понравиться решение, в котором я закончил:
- Получить Homebrew - установить однострочную оболочку script для установки!
- Отредактируйте свой
.profile
или что-то подходящее, и поставьте /usr/local/bin
в начале
вашего PATH
, чтобы Homebrew двоичные файлы были найдены до системных двоичных файлов
-
brew install python
- это устанавливает более новую версию python в /usr/local
-
pip install pandas
Это работало для меня в OS X 10.8.2, и я не вижу причин, по которым он не должен работать в 10.6.8.
Ответ 6
У меня была та же проблема, и в моем случае проблема заключалась в том, что python искал пакеты в некоторых упорядоченных местах, в первую очередь, по умолчанию, по умолчанию, где установлены старые пакеты.
Чтобы проверить, что ищет ваш python, вы можете:
>>> import sys
>>> print '\n'.join(sys.path)
Это выводило каталог "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python" перед пипсом или brew или папками портов.
Простое решение:
export PYTHONPATH="/Library/Python/2.7/site-packages:$PYTHONPATH"
Это сработало для меня, я советую вам добавить эту строку в свой домашний файл bash_profile в следующий раз.
Помните, что sys.path создается с использованием текущего рабочего каталога, за которым следуют каталоги в переменной среды PYTHONPATH. Тогда есть зависимые от установки стандартные dirs.
Ответ 7
У вас, вероятно, есть еще одна версия Numpy, установленная в вашей системе,
попробуйте запросить свою версию numpy и получить ее, если ваш дистрибутив не поддерживает ее.
aka debian/unbuntu/версия Mint может запрашивать в основном из ящика dpkg:
dpkg --get-selections | egrep -i "numpy"
, вы можете увидеть фактическую версию Numpy.
-
Некоторые, имеющие apt, могут либо попросить удалить его, выполнив это: apt-get удалить numpy.
-
Некоторые из них, такие как Fedora, RedHat и любой совместимый выпуск под моделью RedHat, могут также использовать rpm, чтобы запросить установку.
-
Это происходит, сообщая установщику Numpy, чтобы установить себя в текущем /usr/local/lib/python[VERSION]/dist-packages
поверх Linux env и c:[...]\python[VERSION]\site-packages
для окон. Вероятно, одна версия Numpy, установленная в /usr/local/python [VERSION]/dist-packages, сначала будет создана.
- .pth файл хранит информацию о расположении пути конкретного модуля python, но удаление компонента из пакетов может привести к его повреждению...
Будьте осторожны, и вам придется удалить пакет и всю его зависимость... в любом случае очень больно.
Посещение lunchad.net может сэкономить ваше время, иногда у них были новые версии из некоторых пакетов.
Ответ 8
Если вы используете версию python с функцией enthought (EPD), вы можете перейти непосредственно к вашим сайтам и переустановить numpy.
Затем попробуйте установить pandas с помощью pip. Для этого вам придется изменить префикс для установки.
Если проблема остается (как и со мной), попробуйте загрузить pandas tar ball, распакуйте его в своих пакетах сайтов и запустите setup.py install
из своего каталога pandas.
Если вы получили права на свои права, вы можете импортировать pandas и проверять, что он импортируется плавно.
Ответ 9
Самый простой способ установки Pandas, как и почти любой другой пакет для Python, - с помощью pip.
Для многих пакетов (включая Pandas) требуется компилятор и множество сторонних DLL, и многие пользователи Windows не знают, как с этим бороться. Именно поэтому был создан формат "колеса": поэтому пакеты могут загружать предварительно созданные двоичные файлы.
Не каждый проект имеет готовые двоичные диски для Windows. Но вы можете посмотреть на сайт Кристофа Гольке и найти колеса для всех самых популярных. Просто следуйте инструкциям на этой странице, чтобы загрузить файл колес и установить его с помощью pip.
Но в случае Pandas вам не обязательно это делать. У них есть колеса на странице загрузки и загружены в PyPI. И документация говорит вам использовать их. (Ну, сначала предложите использовать Anaconda/Miniconda, но если вы хотите использовать Python, используйте pip и пакеты на PyPI.) Это сработало для меня... на Windows 7 64 бит, python 3.4