Ik probeer de volgende eenvoudige code te gebruiken
import scipy
scipy.test()
Maar ik krijg de volgende fout
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
Ik gebruik Python 2.7 onder Windows 10.
Ik heb scipy
, maar dat lijkt het probleem
niet op te lossen
Elke hulp wordt op prijs gesteld.
Antwoord 1, Autoriteit 100%
Als u naar de lijn kijkt die de fout veroorzaakt, ziet u dit:
from numpy._distributor_init import NUMPY_MKL # requires numpy+mkl
Met deze regel commentaar vermeldt de afhankelijkheid als numpy+mkl
(numpy
met Intel Math Kernel Library ). Dit betekent dat u de numpy
hebt geïnstalleerd door pip
, maar de scipy
is geïnstalleerd door Precompiled Archive, die verwacht numpy+mkl
.
Dit probleem kan eenvoudig worden opgelost door installatie voor numpy+mkl
van WHL-bestand van hier .
Antwoord 2, autoriteit 6%
Installeer numpy-1.11.0_XXX.whl (voor uw Python) opnieuw vanaf www.lfd.uci.edu/~gohlke /pythonlibs. Dit bestand heeft dezelfde naam en versie in vergelijking met de variant die ik eerder op 29.03.2016 heb gedownload, maar de grootte en inhoud verschillen van de oude variant. Na herinstallatie is de fout verdwenen.
Tweede optie – ga terug naar scipy 0.17.0 van 0.17.1
P.S. Ik gebruik Windows 64-bits versie van Python 3.5.1, dus ik kan niet garanderen dat numpy voor Python 2.7 al is gecorrigeerd.
Antwoord 3, autoriteit 5%
Ik weet niet zeker of dit een goede oplossing is, maar de fout is verholpen.
Ik becommentarieerde de regel:
from numpy._distributor_init import NUMPY_MKL
en het werkte. Ik weet niet zeker of hierdoor andere functies kapot gaan
Antwoord 4, autoriteit 3%
Ik had hetzelfde probleem tijdens het installeren van gensim op Windows. Gensim is afhankelijk van scipy en scipy van numpy. Alle drie laten werken is echte pijn. Het kostte me veel tijd om alles op hetzelfde moment te laten werken.
Oplossing:
Als je Windows gebruikt, zorg er dan voor dat je numpy+mkl installeert in plaats van alleen numpy.
Als je scipy en numpy al hebt geïnstalleerd, verwijder dan de installatie en gebruik vervolgens “pip uninstall scipy” en “pip uninstall numpy”
Download dan numpy-1.13.1+mkl-cp34-cp34m-win32.whl van http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy
en installeer met pip install numpy-1.13.1+mkl-cp34-cp34m-win32.wh
Opmerking: in cp34-cp34m staat 34 voor de versie van python die u gebruikt, dus download de relevante versie.
Download scipy nu van http://www.lfd.uci.edu /~gohlke/pythonlibs/#scipy(geschikte versie voor uw python en systeem)
en installeer met “pip install scipy-0.19.1-cp34-cp34m-win32.whl”
Je numpy en Scipy zouden nu allebei moeten werken.
Deze binaries van Christoph Gohlke maken het heel eenvoudig om Python-pakketten op Windows te installeren. Maar zorg ervoor dat u alle afhankelijke pakketten van daaruit downloadt.
Antwoord 5
Ik heb niet genoeg reputatie om commentaar te geven, maar ik wil eraan toevoegen dat het cp-nummer van het .whl-bestand staat voor uw python-versie.
cp35 -> Python 3.5.x
cp36 -> Python 3.6.x
cp37 -> Python 3.7.x
Ik denk dat het vrij duidelijk is, maar toch heb ik hierdoor bijna een uur verspild en misschien hebben andere mensen daar ook moeite mee.
Dus voor mij werkte versie cp36 die ik hier heb gedownload: https:// www.lfd.uci.edu/~gohlke/pythonlibs/#numpy
aangezien ik Python 3.6.8 gebruik.
Toen heb ik numpy verwijderd:
pip uninstall numpy
Toen installeerde ik numpy+mkl:
pip install <destination of your .whl file>
Antwoord 6
De reden voor de fout is dat je je numpy-bibliotheek hebt geüpgraded, waarvan er enkele functionaliteiten van scipy zijn die door de huidige versie vereist zijn om te kunnen werken, die mogelijk niet in scipy worden gevonden. Upgrade gewoon uw scipy-bibliotheek met python -m pip install scipy –upgrade. Ik had dezelfde fout en deze oplossing werkte op mijn python 3.5.
Antwoord 7
Uit je log blijkt duidelijk dat het numpy
pakket ontbreekt. Zoals vermeld in het PyPI-pakket:
De SciPy-bibliotheek is afhankelijk van NumPy, dat gemakkelijke en snelle N-dimensionale arraymanipulatie biedt.
Dus, probeer het numpy
pakket voor python te installeren zoals je deed met scipy
.
Antwoord 8
Ik kreeg onlangs dezelfde fout bij het laden van scipy in jupyter (python3.x, win10), hoewel ik net een upgrade naar numpy-1.13.3+mkl via pip had uitgevoerd.
De oplossing was om eenvoudig het scipy-pakket te upgraden (van v0.19 naar v1.0.0).
Antwoord 9
ja, installeer numpy gewoon opnieuw, het werkt.