ImportError in importing from sklearn: nu se poate importa numele check_build (Programare, Python, Numpy, Scipy, Scikit Learn)

ayush singhal a intrebat.

Primesc următoarea eroare în timp ce încerc să import din sklearn:

>>> from sklearn import svm

Traceback (most recent call last):
  File "<pyshell#17>", line 1, in <module>
   from sklearn import svm
  File "C:Python27libsite-packagessklearn__init__.py", line 16, in <module>
   from . import check_build
ImportError: cannot import name check_build

Folosesc python 2.7, scipy-0.12.0b1 superpack, numpy-1.6.0 superpack, scikit-learn-0.11 Am o mașină Windows 7.

Am verificat mai multe răspunsuri pentru această problemă, dar niciunul dintre ele nu oferă o cale de ieșire din această eroare.

Comentarii

  • Încercați să actualizați scikit-learn la versiunea curentă (0.13). –  > Por adrianp.
  • acum primesc următoarea eroare –  > Por ayush singhal.
  • ImportError: nu se poate importa numele __check_build în loc de check_build –  > Por ayush singhal.
  • Am făcut actualizarea la scikit 0.13 –  > Por ayush singhal.
  • Are cineva o soluție la problema mea? –  > Por ayush singhal.
13 răspunsuri
Sawan

A funcționat pentru mine după ce am instalat scipy.

Comentarii

    25

  • Plus repornirea shell-ului python. 🙂 –  > Por manuscris.
  • Verificați dacă există un fișier numit „sklearn” în același dosar. Încercați să rulați dintr-un alt dosar. Mi-a rezolvat problema (din vina mea). Găsiți fișierul cu <ls | grep -i „sklearn”> – –  > Por Punnerud.
  • @Mannu Da; De asemenea, pentru mine pe notebook-ul jupyter, doar repornind (închizând și deschizând din nou cu un clic) acel ipynb py-kernel a funcționat fără a reporni tot notebook-ul jupyter. –  > Por Abhimanu Kumar.
  • scipy.stats de asemenea, nu a funcționat, de asemenea, a ridicat o eroare. În cazul meu, am avut un fișier numit multiprocessing.py în același director care cumva intra în conflict cu conexiunea socket a kernelului. S-a rezolvat prin redenumirea fișierului multiprocessing_.py (liniuța de subliniere anterioară nu a funcționat). –  > Por pylang.
Gurupad Hegde
>>> from sklearn import preprocessing, metrics, cross_validation

Traceback (most recent call last):
  File "<pyshell#6>", line 1, in <module>
    from sklearn import preprocessing, metrics, cross_validation
  File "D:Python27libsite-packagessklearn__init__.py", line 31, in <module>
    from . import __check_build
ImportError: cannot import name __check_build
>>> ================================ RESTART ================================
>>> from sklearn import preprocessing, metrics, cross_validation
>>> 

Deci, încercați pur și simplu să reporniți shell-ul!

Comentarii

  • Răspunsurile magice de acest gen nu sunt cu adevărat utile, deoarece nu rezolvă problema. Ce se întâmplă dacă o repornire nu o rezolvă? –  > Por icedwater.
  • Menționez doar că acest lucru mi s-a întâmplat cu scikit-learn 0.15.2 compilat cu numpy 1.9 și python 2.7. –  > Por alexbw.
  • Dacă nu doriți să reporniți, del sys.modules['sklearn.__check_build']; import sklearn va funcționa de asemenea –  > Por Jared Forsyth.
Loitd

Soluția mea pentru Python 3.6.5 pe 64 de biți pentru Windows 10:

  1. pip uninstall sklearn
  2. pip uninstall scikit-learn
  3. pip install sklearn

Nu este nevoie să reporniți linia de comandă, dar puteți face acest lucru dacă doriți. mi-a luat o zi pentru a rezolva acest bug. Sper că acest lucru ajută.

Comentarii

  • Dacă spuneți în esență că cea mai recentă versiune de sklearn rezolvă bug-ul, ar fi util să precizați la ce numere de versiune de sklearn faceți upgrade. Vă mulțumim. –  > Por rwp.
  • În Windows 10 a trebuit, de asemenea, să activez căile lungi înainte de a executa aceste einstrucțiuni stackoverflow.com/questions/54778630/… –  > Por Napuu.
user3236650

După ce am instalat numpy , scipy ,sklearn încă are eroare

Soluție:

Configurarea sistemului Path pentru Python & se utilizează variabila PYTHONPATH Variabila de mediu

Variabile de sistem: adăugați C:Python34 în caleaVariabilele utilizatorului: adăugați un nou: (nume)PYTHONPATH (valoare)C:Python34Libsite-packages;

Comentarii

  • mergeți la C:Python34Libsite-packagessklearn Dați dublu clic pe init.py și setup.py. –  > Por user3236650.
BenDundee

De obicei, atunci când primesc acest tip de erori, deschiderea fișierului __init__.py fișier și să mă uit în jur ajută. Mergeți la directorul C:Python27libsite-packagessklearn și asigurați-vă că există un subdirectoriu numit __check_build ca un prim pas. Pe mașina mea (cu o instalare sklearn funcțională, Mac OSX, Python 2.7.3) am __init__.py, , setup.py, , asociate lor .pyc și un fișier binar _check_build.so.

Dacă mă uit în jurul fișierului __init__.py în acel director, următorul pas pe care l-aș face este să merg la sklearn/__init__.py și să comentez declarația de import – chestia check_build verifică doar dacă lucrurile au fost compilate corect, nu pare să facă nimic altceva decât să apeleze un binar precompilat. Acest lucru este, desigur, pe propriul risc și (pentru a fi sigur) o soluție de rezolvare. Dacă compilarea a eșuat, probabil că în curând veți întâmpina alte probleme, mai mari.

Comentarii

  • Nu am _check_build.so în folderul , Ce pot face pentru a obține acest lucru pentru python 2.7 –  > Por ayush singhal.
  • Ați încercat să comentați linia care încearcă să o importe în sklearn/__init__.py? –  > Por BenDundee.
  • Deocamdată, puteți comenta linia care face importul, asta ar trebui să vă facă să funcționați. Puteți apoi să deschideți o problemă în trackerul de probleme github.com/scikit-learn/scikit-learn/issues pare a fi un bug. –  > Por Andreas Mueller.
  • FWIW Comentând import în __init__.py nu a rezolvat problema, dar a scos la iveală o eroare diferită – instalarea scipy nu a reușit. Eroarea din întrebare masca adevărata problemă –  > Por De bază.
user2314737

Am avut aceeași problemă pe Windows. Am rezolvat-o prin instalarea Numpy+MKL de la http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy (acolo este recomandat să instalați numpy+mkl înainte de alte pachete care depind de el) așa cum sugerează acest răspuns.

John McCurdy

Am avut probleme cu importul SKLEARN după ce am instalat o nouă versiune pe 64 de biți a Python 3.4 de pe python.org.

Se pare că era modulul SCIPY care era stricat și, de asemenea, a eșuat când am încercat să „import scipy”.

Soluția a fost să dezinstalez scipy și să îl reinstalez cu pip3:

C:> pip uninstall scipy

[lots of reporting messages deleted]

Proceed (y/n)? y
  Successfully uninstalled scipy-1.0.0

C:Users>pip3 install scipy

Collecting scipy
  Downloading scipy-1.0.0-cp36-none-win_amd64.whl (30.8MB)
    100% |████████████████████████████████| 30.8MB 33kB/s
Requirement already satisfied: numpy>=1.8.2 in c:usersjohnmccurdyappdataloca
lprogramspythonpython36libsite-packages (from scipy)
Installing collected packages: scipy
Successfully installed scipy-1.0.0

C:Users>python
Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:54:40) [MSC v.1900 64 bit (AMD64)]
 on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import scipy
>>>
>>> import sklearn
>>>

Statham

Dacă folosiți Anaconda 2.7 64 bit, încercați

conda upgrade scikit-learn

și reporniți shell-ul python, pentru mine funcționează.

A doua editare când m-am confruntat cu aceeași problemă și am rezolvat-o:

conda upgrade scikit-learn

funcționează și pentru mine

chross

Nici unul dintre celelalte răspunsuri nu a funcționat pentru mine. După câteva tatonări am dezinstalat sklearn:

pip uninstall sklearn

Apoi am scos folderul sklearn de aici: (ajustați calea de acces la sistemul dvs. și versiunea python)

C:Users%USERNAME%AppDataRoamingPythonPython36site-packages

Și instalat de la roata de pe acest site: link

Eroarea era acolo probabil din cauza unui conflict de versiune cu sklearn instalat în altă parte.

Siddaram H

Pentru mine, am fost actualizarea codului existent în noua configurație prin instalarea Anaconda de la proaspăt cu cea mai recentă versiune python (3.7)Pentru aceasta,

from sklearn import cross_validation, 
from sklearn.grid_search import GridSearchCV

la

from sklearn.model_selection import GridSearchCV,cross_validate

Cathrine

nu este nevoie să dezinstalați & apoi reinstalați sklearn

încercați acest lucru:

from sklearn.model_selection import train_test_split

Mubashar Nazar

am avut aceeași problemă reinstalarea anaconda a rezolvat problema pentru mine

user_007

În Windows:

Am încercat să șterg sklearn din shell: pip uninstall sklearn, și să îl reinstalez, dar nu funcționează…

soluția:

1- open the cmd shell.
2- cd c:pythonVERSIONscripts
3- pip uninstall sklearn
4- open in the explorer: C:pythonVERSIONLibsite-packages
5- look for the folders that contains sklearn and delete them ..
6- back to cmd: pip install sklearn