ImportError in importing from sklearn: cannot import name check_build
I am getting the following error while trying to import from sklearn:
>>> from sklearn import svm
Traceback (most recent call last):
File "<pyshell#17>", line 1, in <module>
from sklearn import svm
File "C:\Python27\lib\site-packages\sklearn\__init__.py", line 16, in <module>
from . import check_build
ImportError: cannot import name check_build
I am using python 2.7, scipy-0.12.0b1 superpack, numpy-1.6.0 superpack, scikit-learn-0.11 I have a windows 7 machine
I have checked several answers for this issue but none of them gives a way out of this error.
Solution 1:
Worked for me after installing scipy.
Solution 2:
>>> 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:\Python27\lib\site-packages\sklearn\__init__.py", line 31, in <module>
from . import __check_build
ImportError: cannot import name __check_build
>>> ================================ RESTART ================================
>>> from sklearn import preprocessing, metrics, cross_validation
>>>
So, simply try to restart the shell!
Solution 3:
My solution for Python 3.6.5 64-bit Windows 10:
pip uninstall sklearn
pip uninstall scikit-learn
pip install sklearn
No need to restart command-line but you can do this if you want. It took me one day to fix this bug. Hope this help.
Solution 4:
After installing numpy
, scipy
,sklearn
still has error
Solution:
Setting Up System Path
Variable for Python & the PYTHONPATH
Environment Variable
System Variables: add C:\Python34
into path
User Variables: add new: (name)PYTHONPATH
(value)C:\Python34\Lib\site-packages;
Solution 5:
Usually when I get these kinds of errors, opening the __init__.py
file and poking around helps. Go to the directory C:\Python27\lib\site-packages\sklearn
and ensure that there's a sub-directory called __check_build
as a first step. On my machine (with a working sklearn installation, Mac OSX, Python 2.7.3) I have __init__.py
, setup.py
, their associated .pyc
files, and a binary _check_build.so
.
Poking around the __init__.py
in that directory, the next step I'd take is to go to sklearn/__init__.py
and comment out the import statement---the check_build stuff just checks that things were compiled correctly, it doesn't appear to do anything but call a precompiled binary. This is, of course, at your own risk, and (to be sure) a work around. If your build failed you'll likely soon run into other, bigger problems.