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

Я только что установил пакет pandas и statsmodels на моем python 2.7 Когда я попробовал «импортировать pandas as pd», это сообщение об ошибке выходит. Может ли кто-нибудь помочь? Благодаря!!!

numpy.dtype has the wrong size, try recompiling Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\analytics\ext\python27\lib\site-packages\statsmodels-0.5.0-py2.7-win32.egg\statsmodels\formula\__init__.py", line 4, in <module> from formulatools import handle_formula_data File "C:\analytics\ext\python27\lib\site-packages\statsmodels-0.5.0-py2.7-win32.egg\statsmodels\formula\formulatools.p y", line 1, in <module> import statsmodels.tools.data as data_util File "C:\analytics\ext\python27\lib\site-packages\statsmodels-0.5.0-py2.7-win32.egg\statsmodels\tools\__init__.py", li ne 1, in <module> from tools import add_constant, categorical File "C:\analytics\ext\python27\lib\site-packages\statsmodels-0.5.0-py2.7-win32.egg\statsmodels\tools\tools.py", line 14, in <module> from pandas import DataFrame File "C:\analytics\ext\python27\lib\site-packages\pandas\__init__.py", line 6, in <module> from . import hashtable, tslib, lib File "numpy.pxd", line 157, in init pandas.tslib (pandas\tslib.c:49133) ValueError: numpy.dtype has the wrong size, try recompiling 

  • Доверительные интервалы для прогнозирования модели
  • Вычислить логическую регрессию в python
  • Пользовательские приоритеты в PyMC
  • Как добавить сумму к нулю в GLM в Python?
  • Любая библиотека Python создает таблицы регрессии стиля публикации
  • Прогнозирование будущих значений с использованием регрессии OLS (Python, StatsModels, Pandas)
  • Экспериментальная переменная Python ARIMA из образца
  • Как рассчитать вероятность скручивания кривой в scipy?
  • 11 Solutions collect form web for “ValueError: numpy.dtype имеет неправильный размер, попробуйте перекомпилировать”

    (чтобы немного расширить мой комментарий)

    Разработчики Numpy обычно придерживаются политики сохранения обратного совместимого двоичного интерфейса (ABI). Однако ABI не поддерживает переходы.

    Что это значит:

    Пакет, который использует numpy в скомпилированном расширении, компилируется против определенной версии numpy. Будущая версия numpy будет совместима с скомпилированным расширением пакета (для исключения см. Ниже). Дистрибьюторам этих других пакетов не нужно перекомпилировать свой пакет против более новых версий numpy, и пользователям не нужно обновлять эти другие пакеты, когда пользователи обновляются до более новой версии numpy.

    Однако это не идет в другом направлении. Если пакет скомпилирован против определенной версии numpy, скажем 1.7, то нет гарантии, что двоичные файлы этого пакета будут работать со старыми версиями numpy, скажем, 1.6, и очень часто, или большую часть времени они не будут.

    Бинарное распределение пакетов, таких как pandas и statsmodels, которые скомпилированы против недавней версии numpy, не будет работать, если установлена ​​более старая версия numpy. Некоторые пакеты, например matplotlib, если я правильно помню, компилируют их расширения против самой старой версии numpy, которую они поддерживают. В этом случае пользователи с той же старой или любой новой версией numpy могут использовать эти двоичные файлы.

    Сообщение об ошибке в вопросе является типичным результатом двоичной несовместимости.

    Решение состоит в том, чтобы получить бинарную совместимую версию, либо обновив numpy, либо, по крайней мере, версию, с которой были скомпилированы панды или статистические модели, или перекомпилировать pandas и statsmodels против более старой версии numpy, которая уже установлена.

    Нарушение обратной совместимости ABI:

    Иногда улучшения или рефакторинг в numpy нарушают совместимость ABI назад. Это произошло (непреднамеренно) с numpy 1.4.0. Как следствие, пользователи, которые обновили numpy до 1.4.0, имели двоичные несовместимости со всеми другими скомпилированными пакетами, которые были скомпилированы против предыдущей версии numpy. Для этого необходимо, чтобы все пакеты с двоичными расширениями, использующими numpy, были перекомпилированы для работы с несовместимой версией ABI.

    Для меня (Mac OS X Maverics, Python 2.7)

     easy_install --upgrade numpy 

    помог. После этого вы можете установить обновленные пакеты pandas , scikit-learn и т. Д., Используя pip :

     pip install pandas 

    Я нашел, что это простая версия, устаревшая или несоответствующая, и была исправлена:

     pip install --upgrade numpy pip install --upgrade scipy pip install --upgrade pandas 

    Или может работать с одним лайнером:

     pip install --upgrade numpy scipy pandas 

    У меня была аналогичная ошибка с другой библиотекой, и я понял, что у меня было несколько версий numpy, установленных в моей системе. Исправление для меня состояло в том, чтобы отредактировать мой PYTHONPATH и поместить пакеты сайта, содержащие последнюю версию numpy в первой позиции.

    Как здесь , для меня только sudo pip install pandas==0.13.1 работал

    Я также сталкиваюсь с этой ошибкой при использовании pandas для доступа к MYSQL. Это сообщение об ошибке указывает на двоичную совместимую проблему и может быть разрешено с использованием последней версии пакета pandas и numpy. Вот мои шаги для решения этой проблемы, и она хорошо работает на моем Ubuntu 12.04:

     cd /tmp/ wget https://pypi.python.org/packages/source/p/pandas/pandas-0.12.0.tar.gz tar xzvf pandas-0.12.0.tar.gz cd pandas-0.12.0 easy_install --upgrade numpy 

    В моем случае я установил pandas-0.10.0.win-amd64-py2.7, но проверял, исправлена ​​ли ошибка в более поздней версии панд. Поэтому я сделал easy_install -U для принудительного обновления, но затем получил вышеуказанную ошибку из-за некоторых несовместимостей с numpy и т. Д. … когда я это сделал

     import pandas 

    Чтобы исправить это, я просто переустановил двоичный файл pandas-0.10.0.win-amd64-py2.7, и все работает. Я не видел этого ответа (предлагает использовать pip), который, возможно, помог мне (хотя и не уверен). Установить определенную версию с помощью easy_install

    Также это подчеркивает, почему нужно использовать virtualenv (которого я не был).

    Для меня (Mac OS X Mavericks) он работал над установкой версии для python2.6:

     sudo port install py26-scikit-learn 

    затем выполните:

     python2.6 myscript.py 

    Проблемой, которую я решил на Webfaction, была старая библиотека numpy (1.5), которая противоречила моей новой

    pip pandas

    установка в .virtualenv.

    Проблема была решена после того, как я установил pandas из виртуальной среды. Идея пришла из обсуждения на https://github.com/pydata/pandas/issues/3711 , спасибо, cpcloud !

    Я просто встречаю эту проблему «ValueError» и обратился к ней. Определенно, что-то не так с пакетом numpy.

    Но когда я пытаюсь pip install --upgrade numpy это не удалось, поэтому я numpy.zip и загружаю новый файл numpy.zip . Затем вручную распакуйте и python setup.py install его.

    К счастью, это работает!

    Как и @ user333700, требуемые версии библиотек могут не встречаться друг для друга. Вы получаете одну библиотеку в качестве зависимости другого. Тогда, не зная, что он уже установлен как зависимость, вам нужна эта конкретная библиотека, и вы устанавливаете одну версию. С такими способами зависимости могут испортиться.

    Я жил таким делом и искал решение. Найдено: https://stackoverflow.com/a/12975518/1694344

    У меня было две разные версии файла egg-info и имя папки numpy:

     drwxr-xr-x. 19 root root 4096 Sep 25 15:00 numpy drwxr-xr-x. 2 root root 4096 Sep 22 11:25 numpy-1.13.1.dist-info -rw-r--r--. 1 root root 1630 Nov 20 2015 numpy-1.7.1-py2.7.egg-info 

    Я удалил их все и переустановил numpy с помощью pip.

    Python - лучший язык программирования в мире.