Ответ 1
Работала для меня после установки scipy.
При попытке импортировать из 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
Я использую python 2.7, scipy-0.12.0b1 superpack, nump-1.6.0 superpack, scikit-learn-0.11 У меня есть машина Windows 7
Я проверил несколько ответов для этой проблемы, но ни один из них не дает выход из этой ошибки.
Работала для меня после установки scipy.
>>> 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
>>>
Итак, попробуйте перезагрузить оболочку!
Перезагрузите оболочку python после установки scipy! Вы, должно быть, не перезапустили простоя после установки!
После установки numpy
, scipy
, sklearn
все еще есть ошибка
Решение:
Настройка системы Path
Переменная для Python и PYTHONPATH
Переменная среды
Системные переменные: добавьте C:\Python34
в путь
Пользовательские переменные: добавить новое: (имя) PYTHONPATH
(значение) C:\Python34\Lib\site-packages;
Мое решение для Python 3.6.5 64-битной Windows 10:
pip uninstall sklearn
pip uninstall scikit-learn
pip install sklearn
Нет необходимости перезапускать командную строку, но вы можете сделать это, если хотите. Мне потребовался один день, чтобы исправить эту ошибку. Надеюсь, это поможет.
Обычно, когда я получаю такие ошибки, открытие файла __init__.py
и выкалывание помогает. Перейдите в каталог C:\Python27\lib\site-packages\sklearn
и убедитесь, что в качестве первого шага существует подкаталог с именем __check_build
. На моей машине (с установленной установкой sklearn, Mac OSX, Python 2.7.3) у меня есть __init__.py
, setup.py
, связанные с ними файлы .pyc
и двоичные _check_build.so
.
В этом каталоге будет __init__.py
, следующий шаг - перейти в sklearn/__init__.py
и прокомментировать оператор import --- материал check_build просто проверяет, что вещи были скомпилированы правильно, t, похоже, ничего не делает, кроме вызова прекомпилированного двоичного файла. Это, конечно, на свой страх и риск, и, конечно же, работа. Если ваша сборка завершилась неудачно, вы, скорее всего, столкнетесь с другими, большими проблемами.
У меня была такая же проблема в Windows. Решив его, установив Numpy + MKL из http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy (там было рекомендовано установить numpy + mkl перед другими пакетами, зависящими от него), как было предложено этот ответ.
Возможно, это связано с тем, что у вас может быть установлен scikit-learn вместе со sklearn. Запустите следующие команды
Это решило проблему для меня.
У меня были проблемы с импортом SKLEARN после установки новой 64-битной версии Python 3.4 с python.org.
Оказывается, что это был модуль SCIPY, который был сломан, и alos потерпел неудачу, когда я попытался "импортировать scipy".
Решением было удалить Scipy и переустановить его с помощью 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:\users\johnmccurdy\appdata\loca
l\programs\python\python36\lib\site-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
>>>
Если вы используете Anaconda 2.7 64 bit, попробуйте
conda upgrade scikit-learn
и перезапустите оболочку Python, которая работает для меня.
Второе редактирование, когда я столкнулся с той же проблемой и решил ее:
conda upgrade scikit-learn
у меня тоже работает
Ни один из других ответов не работал для меня. После некоторого ковыряния я удалил склеарн:
pip uninstall sklearn
Затем я удалил папку sklearn отсюда: (настройте путь к вашей системе и версии Python)
C:\Users\%USERNAME%\AppData\Roaming\Python\Python36\site-packages
И установил его с руля с этого сайта: ссылка
Ошибка была, вероятно, из-за конфликта версий со sklearn, установленным где-то еще.
Для меня я обновлял существующий код до новой установки, устанавливая Anaconda из новой версии Python последней (3.7). Для этого
from sklearn import cross_validation,
from sklearn.grid_search import GridSearchCV
в
from sklearn.model_selection import GridSearchCV,cross_validate
Я столкнулся с той же проблемой на своей машине Windows и решил ее решить, установив пакет numpy + mkl из http://www.lfd.uci.edu/~gohlke/pythonlibs/. После установки перезапустите оболочку.
В окнах:
Я попытался удалить sklearn из оболочки: pip удалить программу sklearn и переустановить ее, но она не работает..
решение:
1- open the cmd shell.
2- cd c:\pythonVERSION\scripts
3- pip uninstall sklearn
4- open in the explorer: C:\pythonVERSION\Lib\site-packages
5- look for the folders that contains sklearn and delete them ..
6- back to cmd: pip install sklearn
У меня была проблема при установке sklearn и попытка импортировать наборы данных, проблема заключалась в совместимости с Cython. после создания нового env без cython он работал как шарм.
у меня была такая же проблема, переустановка анаконды решила проблему для меня
убедитесь, что ваш файл, в котором вы кодируете, не назван "sklearn". Я сделал ту же ошибку и теперь после переименования файла, он работает нормально
нет необходимости удалять, а затем переустановить sklearn
попробуй это:
from sklearn.model_selection import train_test_split
Недавно я встретил ту же ошибку, что и вы.
Traceback (most recent call last):
entFile "/Users/honey/Documents/machine_learning/task1/sklearn.py", line 8, in <module>er code here
from sklearn import feature_extraction
File "/Users/honey/Documents/machine_learning/task1/sklearn.py", line 8, in <module>
from sklearn import feature_extraction
ImportError: cannot import name 'feature_extraction'
[Finished in 0.8s with exit code 1]
[cmd: ['python3', '-u', '/Users/honey/Documents/machine_learning/task1/sklearn.py']]
Затем я обнаружил, что python смущен названием "sklearn.py", поэтому код не может быть выполнен правильно. Я замечаю, что на твоем пути тоже есть склеарн
C:\Python27\lib\site-packages\sklearn\__init__.py
Поэтому, возможно, вы можете попытаться избежать "склеарна" на своем пути, чтобы избежать двусмысленности. Надеюсь, это поможет. (Мне жаль, что, возможно, я неправильно понял проблему, и это может не помочь.)