ImportError: NUMPY_MKL नाम आयात नहीं कर सकता


92

मैं निम्नलिखित सरल कोड चलाने की कोशिश कर रहा हूं

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 के तहत अजगर 2.7 का उपयोग कर रहा हूं।

मैंने स्थापित किया है scipyलेकिन यह समस्या को हल करने के लिए प्रतीत नहीं होता है

किसी भी मदद की सराहना की है।

जवाबों:


223

यदि आप उस रेखा को देखते हैं जो त्रुटि पैदा कर रही है, तो आप इसे देखेंगे:

from numpy._distributor_init import NUMPY_MKL  # requires numpy+mkl

इस लाइन टिप्पणी के रूप में निर्भरता में कहा गया है numpy+mkl( numpyके साथ इंटेल मठ कर्नेल लाइब्रेरी )। इसका मतलब है कि आपने numpyबाय इंस्टॉल कर दिया है pip, लेकिन scipyप्री-कम्पाइल किए गए आर्काइव द्वारा इंस्टॉल किया गया है, जो उम्मीद करता है numpy+mkl

इस समस्या numpy+mklको यहाँ से whl फ़ाइल के लिए संस्थापन द्वारा आसानी से हल किया जा सकता है


5
इस समाधान ने मेरे लिए विंडोज
स्कॉटमैक्स

2
@VMAtm क्या हम एक ही virtualenvs में numpy (पाइप से) और numpy + mkl (precompiled libs से) दोनों इंस्टॉलेशन कर सकते हैं?
स्ट्रॉहटलफी

जहां तक ​​मुझे पता है, जवाब नहीं है। वे एक दूसरे को ununstalling कर रहे हैं, क्योंकि यह अंत में एक सुन्न है, केवल कुछ प्रोसेसर निर्देशों के साथ (यदि मैं इसे अच्छी तरह से समझता हूं)
VMAtm

2
समाधान पूरी तरह से python 2.7 विंडोज़ पर काम किया 7. मुझे बहुत समय बचाया एक दर्जन धन्यवाद!
सेल

पाइप स्थापित करें <numpy wheel path> --user ने मेरे लिए काम किया क्योंकि मुझे अनुमति मुद्दा मिल रहा था।
अमित कुमार

14

Www.lfd.uci.edu/~gohlke/pythonlibs से numpy-1.11.0_XXX.whl (अपने पायथन के लिए) को पुनर्स्थापित करें । यदि मेरे द्वारा पहले डाउनलोड किए गए संस्करण 29.03.2016 से तुलना की जाए तो इस फ़ाइल का नाम और संस्करण समान है, लेकिन इसका आकार और सामग्री पुराने संस्करण से भिन्न है। पुनः-स्थापना त्रुटि के बाद गायब हो गया।

दूसरा विकल्प - 0.17.1 से 0.17.0 पर वापस लौटने के लिए

PS मैं पायथन 3.5.1 के विंडोज 64-बिट संस्करण का उपयोग करता हूं, इसलिए यह गारंटी नहीं दे सकता कि पायथन 2.7 के लिए सुन्न पहले से ही सही है।


11

मुझे यकीन नहीं है कि यह एक अच्छा समाधान है लेकिन इसने त्रुटि को दूर कर दिया। मैंने टिप्पणी की:

from numpy._distributor_init import NUMPY_MKL 

और यह काम किया। यकीन नहीं है कि अगर यह अन्य सुविधाओं को तोड़ने के लिए कारण होगा


3
:) दिलचस्प बात यह है कि यह वास्तव में काम करता है और scipy के लिनक्स संस्करण में ऐसी कोई रेखा नहीं है।
dzmitry

7

मुझे विंडोज़ पर गेंसिम स्थापित करते समय भी यही समस्या थी। Gensim, खसखस ​​पर निर्भर है और सुन्न पर scipy। तीनों काम करना असली दर्द है। एक ही समय पर सभी काम करने में मुझे बहुत समय लगा।

समाधान: यदि आप विंडोज़ का उपयोग कर रहे हैं, तो सुनिश्चित करें कि आप केवल सुन्न के बजाय numpy + mkl इंस्टॉल करें। यदि आप पहले से ही स्किपी और सुपी को स्थापित कर चुके हैं, तो "पाइप अनइंस्टॉल स्काइप" और "पाइप अनइंस्टॉल सुपी" का उपयोग करके अनइंस्टॉल करें

फिर डाउनलोड numpy-1.13.1 + से MKL-cp34-cp34m-win32.whl http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy और पिप स्थापित का उपयोग कर स्थापित numpy-1.13.1 + mkl- cp34-cp34m-win32.wh नोट: cp34-cp34m 34 ​​में आप उपयोग कर रहे अजगर के संस्करण का प्रतिनिधित्व करते हैं, इसलिए संबंधित संस्करण डाउनलोड करें।

अब http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy (आपके पायथन और सिस्टम के लिए उपयुक्त संस्करण) से scipy डाउनलोड करें और "pip install scipy ‑ 0.42.1 ‑ cp34 ‑ cp34m ‑ win32 का उपयोग करके इंस्टॉल करें। WHL "

आपका सुन्न और डरावना दोनों अब काम करना चाहिए। क्रिस्टोफ गोहलेके ये बायनेरिज़ खिड़कियों पर अजगर पैकेज स्थापित करना बहुत आसान बनाता है। लेकिन सुनिश्चित करें कि आप वहां से सभी निर्भर पैकेज डाउनलोड करें।


मैं ३.४ से ३.४ से ३.६ से
उलट

3

मेरे पास टिप्पणी करने के लिए पर्याप्त प्रतिष्ठा नहीं है, लेकिन मैं जोड़ना चाहता हूं, कि .whl फ़ाइल की cp संख्या आपके पायथन संस्करण के लिए है।

cp35 -> पायथन 3.5.x

cp36 -> पायथन 3.6.x

cp37 -> पायथन 3.7.x

मुझे लगता है कि यह बहुत स्पष्ट है, लेकिन फिर भी मैं इस वजह से लगभग एक घंटे बर्बाद कर दिया है और शायद अन्य लोग भी उस के साथ संघर्ष करते हैं।

इसलिए मेरे लिए वर्जन cp36 जो मैंने यहाँ डाउनलोड किया था: https://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy जब से मैं पायथन 3.6.8 का उपयोग कर रहा हूँ।

फिर मैंने सुन्न की स्थापना रद्द की:

pip uninstall numpy 

फिर मैंने numpy + mkl स्थापित किया:

pip install <destination of your .whl file>

2

त्रुटि का कारण है कि आपने अपनी सुपीरियर लाइब्रेरी को अपग्रेड किया है, जिसमें स्केपी से कुछ फंक्शनलिटीज हैं जो इसे चलाने के लिए वर्तमान संस्करण द्वारा आवश्यक हैं जो कि स्कैपी में नहीं मिल सकती हैं। बस अजगर स्कम लाइब्रेरी का उपयोग करके अपने स्काइप लाइब्रेरी को अपग्रेड करें। मैं उसी त्रुटि का सामना कर रहा था और इस समाधान ने मेरे अजगर 3.5 पर काम किया।


0

आपके लॉग से यह स्पष्ट है कि numpyपैकेज गायब है। जैसा कि PyPI पैकेज में बताया गया है :

SciPy पुस्तकालय NumPy पर निर्भर करता है, जो सुविधाजनक और तेज एन-आयामी सरणी हेरफेर प्रदान करता है।

तो, numpyअजगर के लिए पैकेज स्थापित करने का प्रयास करें जैसा आपने किया था scipy


3
मैंने भी स्थापित किया था। किसी कारण से मुझे स्पाइडर को बंद करना पड़ा और इसे फिर से चलाना पड़ा और इससे समस्या हल हो गई। फिर भी धन्यवाद।
स्टीव

2
यह त्रुटि तब भी उत्पन्न होती है जब भी खसरा मौजूद होता है, यदि एमकेएल समर्थन के साथ सुन्न को संकलित नहीं किया गया है।
केडीएन

काम किया। धन्यवाद मेरे scikit से था lfd.uci.edu/~gohlke/pythonlibs तो एक ही distro से numpy का इस्तेमाल किया था
ANUVRAT Tiku

0

मुझे हाल ही में एक ही त्रुटि मिली जब ज्यूपिटर (python3.x, win10) में पपड़ी को लोड करने की कोशिश कर रहा था, हालांकि बस पाइप के माध्यम से numpy-1.13.3 + mkl में अपग्रेड किया गया था। इसका उपाय केवल स्कैपी पैकेज (v0.19 से v1.0.0 तक) को अपग्रेड करना था।


मैं बस एक फिक्स प्रदान करना चाहता था जिसका उपयोग मैं एक बहुत ही समान समस्या का सामना कर रहा था।
EV

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.