zeros tutorial español array python numpy install pandas statsmodels

python - tutorial - ValueError: numpy.dtype tiene el tamaño incorrecto, intente recompilar



numpy tutorial español pdf (12)

(para ampliar un poco en mi comentario)

Los desarrolladores de Numpy siguen en general una política de mantener una interfaz binaria compatible con versiones anteriores (ABI). Sin embargo, el ABI no es compatible con versiones anteriores.

Lo que eso significa:

Un paquete, que usa numpy en una extensión compilada, se compila con una versión específica de numpy. La versión futura de numpy será compatible con la extensión compilada del paquete (para la excepción, ver más abajo). Los distribuidores de esos otros paquetes no necesitan recompilar su paquete contra una versión más nueva de numpy y los usuarios no necesitan actualizar estos otros paquetes, cuando los usuarios actualizan a una versión más nueva de numpy.

Sin embargo, esto no va en la otra dirección. Si un paquete se compila contra una versión numpy específica, digamos 1.7, entonces no hay garantía de que los binarios de ese paquete funcionen con versiones numpy más antiguas, digamos 1.6, y muy a menudo o la mayoría de las veces no lo harán.

La distribución binaria de paquetes como pandas y modelos de estadísticas, compilados contra una versión reciente de numpy, no funcionará cuando se instale una versión anterior de numpy. Algunos paquetes, por ejemplo matplotlib, si mal no recuerdo, compilan sus extensiones con la versión numpy más antigua que admiten. En este caso, los usuarios con la misma versión anterior o más reciente de numpy pueden usar esos binarios.

El mensaje de error en la pregunta es un resultado típico de incompatibilidades binarias.

La solución es obtener una versión compatible binaria, actualizando numpy a al menos la versión contra la que se compilaron los pandas o modelos de estadísticas, o recompilando pandas y modelos de estadísticas contra la versión anterior de numpy que ya está instalada.

Rompiendo la compatibilidad hacia atrás ABI:

A veces, las mejoras o refactorizaciones en numpy rompen la compatibilidad con versiones anteriores de ABI. Esto sucedió (involuntariamente) con numpy 1.4.0. Como consecuencia, los usuarios que actualizaron numpy a 1.4.0, tenían incompatibilidades binarias con todos los demás paquetes compilados, que fueron compilados contra una versión anterior de numpy. Esto requiere que todos los paquetes con extensiones binarias que usen numpy tengan que recompilarse para que funcionen con la versión incompatible ABI.

Acabo de instalar pandas y el paquete statsmodels en mi Python 2.7. Cuando probé "importar pandas como pd", aparece este mensaje de error. ¿Alguien puede ayudar? ¡¡¡Gracias!!!

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


Acabo de conocer este problema de ''ValueError'' y lo he abordado. Definitivamente hay algo mal con el paquete numpy.

Pero cuando trato de pip install --upgrade numpy falló, así que desinstalo y descargo el archivo numpy.zip más numpy.zip . A continuación, descomprímalo manualmente y python setup.py install .

Afortunadamente, ¡funciona!


Como here , para mí solo sudo pip install pandas==0.13.1 trabajado


Como dijo @ user333700, las versiones requeridas de las bibliotecas pueden no encontrarse entre sí. Obtienes una biblioteca como dependencia de otra. Luego, sin saber que ya estaba instalado como dependencia, necesita esa biblioteca específica e instala una versión. Con tales formas, las dependencias pueden arruinarse.

Viví un caso así y busqué una solución. Encontrado esto: https://.com/a/12975518/1694344

Tenía dos versiones diferentes para el archivo egg-info y el nombre de la carpeta 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

Los eliminé todos y reinstalé numpy con pip.


Descubrí que es una versión simple que está desactualizada o no coincide y se solucionó con:

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

O podría funcionar con un trazador de líneas:

pip install --upgrade numpy scipy pandas


El problema que resolví en Webfaction era la vieja biblioteca numpy (1.5) que estaba en conflicto con mi versión nueva.

pip instala pandas

instalación en .virtualenv.

El problema fue resuelto después de que pip instalé pandas fuera del entorno virtual. La idea surgió de la discusión en https://github.com/pydata/pandas/issues/3711 , gracias, cpcloud !


En mi caso, había instalado pandas-0.10.0.win-amd64-py2.7 pero estaba verificando si se había corregido un error en una versión más reciente de pandas. Así que hice un easy_install -U para forzar la actualización, pero luego obtuve el error anterior debido a algunas incompatibilidades con numpy, etc ... cuando lo hice

import pandas

Para solucionarlo, acabo de reinstalar el binario pandas-0.10.0.win-amd64-py2.7 y todo funciona. No vi esta respuesta (sugiere usar pip) que me pudo haber ayudado (aunque no estoy seguro) Instalar una versión en particular con easy_install

También esto destaca por qué uno debería usar virtualenv (que yo no era).


Hay casos en los que desea mantener una versión específica de NumPy y la opción de actualización mencionada aquí no funcionará. Un ejemplo que se me ocurrió fue la distribución de Python preinstalada con ArcGIS. Para que ArcPy funcione en ArcGIS 10.5.1, esa distribución necesita ser Python 2.7.12 con NumPy 1.9.3 y cualquier otra versión de NumPy probablemente cause problemas con su funcionalidad de ArcPy.

Lo que puede hacer con este caso es intentar instalar una versión anterior específica de la biblioteca problemática de terceros que se supone que es compatible con la versión anterior de NumPy que tiene ArcGIS.

Por ejemplo, scikit-learn 0.19.1 NO funcionaría con NumPy 1.9.3 y daría como resultado el mismo error que usted mencionó. Sin embargo, scikit-learn 0.15 funciona bien. Puede probar diferentes versiones para encontrar la que funciona. Solo menciona el número de versión a través de pip:

python -m pip install scikit-learn==0.15


Para mí (Mac OS X Mavericks) funcionó para instalar la versión de python2.6:

sudo port install py26-scikit-learn

entonces corre:

python2.6 myscript.py


Para mí (Mac OS X Maverics, Python 2.7)

easy_install --upgrade numpy

ayudado. Después de esto, puede instalar paquetes actualizados pandas , scikit-learn , etc. usando pip :

pip install pandas


También encuentro este error cuando uso pandas para acceder a MYSQL. Este mensaje de error indica un problema binario compatible y se puede resolver con la última versión de pandas y paquete numpy. Estos son mis pasos para resolver este problema, y ​​funciona bien en mi 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


Tuve un error similar con otra biblioteca y me di cuenta de que tenía varias versiones de numpy instaladas en mi sistema. La solución para mí fue editar mi PYTHONPATH y colocar los paquetes de sitio que contenían la última versión de numpy en la primera posición.