python - for - ImportError: no se puede importar el nombre NUMPY_MKL
pip install numpy (9)
De su registro está claro que
numpy
paquete
numpy
.
Como se menciona en el
paquete PyPI
:
La biblioteca SciPy depende de NumPy, que proporciona una manipulación de matriz N-dimensional conveniente y rápida.
Por lo tanto, intente instalar el paquete
numpy
para python como lo hizo con
scipy
.
Estoy tratando de ejecutar el siguiente código simple
import scipy
scipy.test()
Pero recibo el siguiente error
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:/Python27/lib/site-packages/spyderlib/widgets/externalshell/sitecustomize.py", line 586, in runfile
execfile(filename, namespace)
File "C:/Users/Mustafa/Documents/My Python Code/SpectralGraphAnalysis/main.py", line 8, in <module>
import scipy
File "C:/Python27/lib/site-packages/scipy/__init__.py", line 61, in <module>
from numpy._distributor_init import NUMPY_MKL # requires numpy+mkl
ImportError: cannot import name NUMPY_MKL
Estoy usando Python 2.7 en Windows 10.
He instalado
scipy
pero eso no parece resolver el problema.
Cualquier ayuda es apreciada.
La razón del error es que actualizó su biblioteca numpy de la que hay algunas funcionalidades de scipy que la versión actual requiere para que se ejecute y que no se pueden encontrar en scipy. Simplemente actualice su biblioteca scipy usando python -m pip install scipy --upgrade. Estaba enfrentando el mismo error y esta solución funcionó en mi python 3.5.
No estoy seguro de si esta es una buena solución, pero eliminó el error. Comenté la línea:
from numpy._distributor_init import NUMPY_MKL
Y funcionó. Sin embargo, no estoy seguro de si esto hará que otras funciones se rompan
No tengo suficiente reputación para comentar, pero quiero agregar que el número de cp del archivo .whl representa su versión de Python.
cp35 -> Python 3.5.x
cp36 -> Python 3.6.x
cp37 -> Python 3.7.x
Creo que es bastante obvio, pero aún así perdí casi una hora debido a esto y tal vez otras personas también luchan con eso.
Entonces, para mí funcionó la versión cp36 que descargué aquí: https://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy ya que estoy usando Python 3.6.8.
Luego desinstalé numpy:
pip uninstall numpy
Luego instalé numpy + mkl:
pip install <destination of your .whl file>
Recientemente recibí el mismo error al intentar cargar scipy en jupyter (python3.x, win10), aunque acabo de actualizar a numpy-1.13.3 + mkl a través de pip. La solución fue simplemente actualizar el paquete scipy (de v0.19 a v1.0.0).
Sí, solo reinstalar numpy, funciona.
Si observa la línea que está causando el error, verá esto:
from numpy._distributor_init import NUMPY_MKL # requires numpy+mkl
Este comentario de línea indica la dependencia como
numpy+mkl
(
numpy
con
Intel Math Kernel Library
).
Esto significa que ha instalado
numpy
por
pip
, pero
scipy
fue instalado por un archivo precompilado, que espera
numpy+mkl
.
Este problema se puede resolver fácilmente
numpy+mkl
desde el archivo whl desde
here
.
Tuve el mismo problema al instalar gensim en Windows. Gensim depende de scipy y scipy de numpy. Hacer que los tres funcionen es un verdadero dolor. Me llevó mucho tiempo hacer que todo funcionara al mismo tiempo.
Solución: si está utilizando Windows, asegúrese de instalar numpy + mkl en lugar de solo numpy. Si ya ha instalado scipy y numpy, desinstálelo con "pip uninstall scipy" y "pip uninstall numpy"
Luego descargue numpy-1.13.1 + mkl-cp34-cp34m-win32.whl desde here e instálelo usando pip install numpy-1.13.1 + mkl- cp34-cp34m-win32.wh Nota: en cp34-cp34m 34 representa la versión de python que está utilizando, así que descargue la versión correspondiente.
Ahora descargue scipy de http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy (versión apropiada para su python y sistema) e instálelo usando "pip install scipy ‑ 0.19.1 ‑ cp34 ‑ cp34m ‑ win32. whl "
Tu numpy y Scipy ambos deberían funcionar ahora. Estos binarios de Christoph Gohlke hacen que sea muy fácil instalar paquetes de Python en Windows. Pero asegúrese de descargar todos los paquetes dependientes desde allí.
Vuelva a instalar numpy-1.11.0_XXX.whl (para su Python) desde www.lfd.uci.edu/~gohlke/pythonlibs . Este archivo tiene el mismo nombre y versión si se compara con la variante que descargué anteriormente el 29.03.2016, pero su tamaño y contenido difieren de la variante anterior. Después de la reinstalación, el error desapareció.
Segunda opción: volver a Scipy 0.17.0 desde 0.17.1
PD: Uso la versión de Windows de 64 bits de Python 3.5.1, por lo que no puedo garantizar que Numpy para Python 2.7 ya esté corregido.