次の簡単なコードを実行しようとしています
import scipy
scipy.test()
しかし、私は次のエラーが出ています
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
私は窓10の下でpython 2.7を使用しています。
scipy
をインストールしましたが、それで問題が解決するとは思われません
任意の助けは大歓迎です。
エラーの原因となっている行を見ると、これがわかります。
from numpy._distributor_init import NUMPY_MKL # requires numpy+mkl
この行コメントは、依存関係をnumpy+mkl
((numpy
with Intel Math Kernel Library )として示しています。これはnumpy
をpip
でインストールしたが、scipy
はプリコンパイルされたアーカイブでインストールされたことを意味します。これにはnumpy+mkl
が必要です。
この問題はwhlファイルからnumpy+mkl
を こちらからインストールすることで簡単に解決できます 。
www.lfd.uci.edu/~gohlke/pythonlibs から(あなたのPython用の)numpy-1.11.0_XXX.whlを再インストールします。このファイルは2016年3月29日以前に私がダウンロードしたバリアントと比較すると同じ名前とバージョンを持っていますが、そのサイズと内容は古いバリアントとは異なります。再インストールエラーが消えた後。
2番目の選択肢 - 0.17.1からscipy 0.17.0に戻る
P.S私はWindows 64ビット版のPython 3.5.1を使用していますので、Python 2.7の派手さがすでに修正されていることを保証することはできません。
これが良い解決策かどうかはわかりませんが、エラーが取り除かれました。私はその行をコメントアウトしました:
from numpy._distributor_init import NUMPY_MKL
そしてそれはうまくいった。これが他の機能を壊す原因になるかどうかわかりません
Windowsにgensimをインストールしているときに同じ問題がありました。 Gensimはscipyに依存しています。 3つすべての仕事をすることは本当の痛みです。それがすべて同じ時間に機能するようにするには、多くの時間がかかりました。
解決策:あなたがウィンドウズを使用しているならば、あなたはただnumpyの代わりにnumpy + mklをインストールすることを確認してください。既にscipyとnumpyをインストールしている場合は、アンインストールしてから "pip uninstall scipy"と "pip uninstall numpy"を使用してください。
それからnumpy-1.13.1 + mkl-cp34-cp34m-win32.whlを http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy からダウンロードしてpip install numpy-1.13.1 + mkl-cp34-cp34m-win32.whを使用してインストールします。注:cp34-cp34mでは、34は使用しているPythonのバージョンを表すため、関連するバージョンをダウンロードしてください。
http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy (お使いのPythonとシステムに適したバージョン)からscipyをダウンロードし、 "pip install"を使ってインストールしてください。 scipy-0.19.1-cp34-cp34m-win32.whl "
あなたのでんぷんとScipyは両方とも今動作するはずです。 Christoph Gohlkeによるこれらのバイナリは、pythonパッケージをWindowsにインストールすることを非常に簡単にします。しかし、そこからすべての依存パッケージをダウンロードするようにしてください。
エラーの原因はあなたがそれを実行するために現在のバージョンに必要なscipyからいくつかの機能がscipyにないかもしれないあなたのnumpyライブラリをアップグレードしたことです。 python -m pip install scipy --upgradeを使用してscipyライブラリをアップグレードするだけです。私は同じエラーに直面していました、そして、この解決策は私のPython 3.5で動きました。
私はコメントするのに十分な評判を持っていません、しかし、私は加えたいと思います、.whlファイルのcp番号はあなたのpythonバージョンを表します。
cp35 - > Python 3.5.x
cp36 - > Python 3.6.x
cp37 - > Python 3.7.x
私はそれがかなり明白であると思うが、それでも私はこれのためにほぼ1時間を無駄にし、そしておそらく他の人々もそれに苦労している。
だから私のために私がここでダウンロードしたバージョンcp36を働きました: https://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy 私以来Python 3.6.8を使っています。
それから私はnumpyをアンインストールしました:
pip uninstall numpy
それから私はnumpy + mklをインストールしました:
pip install <destination of your .whl file>
あなたのログから、numpy
パッケージが見つからないことが明らかです。 PyPIパッケージ で述べたように、
SciPyライブラリはNumPyに依存しており、NumPyは便利で高速なN次元配列操作を提供します。
numpy
と同じように、python用のscipy
パッケージをインストールしてみてください。
私は最近jupyter(python3.x、win10)でscipyをロードしようとしたときに同じエラーを受けましたが、pipを通してnumpy-1.13.3 + mklにアップグレードしたばかりです。解決策はscipyパッケージを単純にアップグレードすることでした(v0.19からv1.0.0)。
はい、ただでたらめな再インストール、それは動作します。