Numpy.dtype имеет неправильный размер, попробуйте перекомпилировать

При импорте pandas я получаю следующую ошибку:

Numpy.dtype has the wrong size, try recompiling

Я запускаю Python 2.7.5 с pandas 0.14.1 и Numpy 1.9.0. Я попытался установить более старые версии обоих приложений, используя основные ошибки каждый раз. Я начинаю, когда речь заходит о Python, поэтому любая помощь здесь была бы высоко оценена.:)

EDIT: работающая ОС X 10.9.4

EDIT 2: вот ссылка на видео, в котором я удаляю и переустанавливаю Numpy + Pandas, а затем запускаю .py файл: https://www.dropbox.com/s/sx9l288jijokrar/numpy%20issue.mov?dl=0

Ответ 1

Я видел эту ошибку раньше, и обычно она связана с pandas ссылкой на старую версию numpy. Но переустановка может не помочь, если ваш путь python все еще указывает на старую версию numpy.

Когда вы устанавливаете numpy через pip, pip сообщит вам, где он был установлен. Что-то вроде

pip install numpy==1.9.2
Requirement already satisfied (use --upgrade to upgrade): numpy==1.9.2 in /Library/Python/2.7/site-packages
Cleaning up...

Итак, у вас установлена ​​правильная версия numpy. Но когда вы входите в python

$ python
Python 2.7.6 (default, Sep  9 2014, 15:04:36) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
>>> numpy.__file__
'/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy/__init__.pyc'
>>> numpy.version.version
'1.8.0rc1'

Ваш путь может указывать на другое число.

Самое простое решение, которое я нашел для этого, - просто удалить ненужную версию numpy (переместив ее в папку _bak для обеспечения безопасности)

mv /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy_bak

И теперь, когда я запускаю python

$ python
Python 2.7.6 (default, Sep  9 2014, 15:04:36) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
>>> numpy.__file__
'/Library/Python/2.7/site-packages/numpy/__init__.pyc'
>>> numpy.version.version
'1.9.2'

У меня есть версия, которую я хочу.

Для более сложных рабочих процессов, когда различным приложениям могут потребоваться разные версии различных пакетов, virtualenvs - отличный способ пойти http://docs.python-guide.org/en/latest/dev/virtualenvs/. Но я думаю, что для вашего случая, когда вы просто хотите, чтобы pandas и numpy играли хорошо, этот подход должен работать нормально.

Ответ 2

У меня такая же ошибка. Я решил удалить существующий numpy и снова установить.

pip uninstall numpy #it will remove older version of  numpy on your computer
pip install numpy   #it will install recent version of numpy

Собственно, я не знаю, почему это работает. Я просто изменил версию numpy.

Ответ 3

вам следует попытаться обновить свой numpy до последнего. это сработало для меня.

pip install --upgrade numpy

Ответ 4

В последнее время у меня была такая же проблема, и я исправил ее:
1. Удалите python
2. Установите последнюю версию python 2. В моем случае я установил python-2.7.15. Ссылка: https://www.python.org/ftp/python/2.7.15/python-2.7.15.amd64.msi
3. Установите pandas и sklearn

Теперь я надеюсь, что ваш код будет работать должным образом.