[python] ImportError dans l'importation à partir de sklearn: impossible d'importer le nom check_build


Answers

>>> 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
>>> 

Alors, essayez simplement de redémarrer le shell!

Question

J'obtiens l'erreur suivante en essayant d'importer de 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

J'utilise python 2.7, superpack scipy-0.12.0b1, superpack numpy-1.6.0, scikit-learn-0.11 J'ai une machine Windows 7

J'ai vérifié plusieurs réponses à ce problème, mais aucune d'elles ne permet de sortir de cette erreur.




Récemment, j'ai rencontré le même mistike que vous.

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']]

Puis j'ai trouvé que python est confondu par le nom "sklearn.py", donc le code ne peut pas être exécuté correctement. Je remarque qu'il y a aussi sklearn sur ton chemin

C:\Python27\lib\site-packages\sklearn\__init__.py

Alors peut-être vous pouvez essayer d'éviter "sklearn" dans votre chemin pour éviter l'ambiguïté. J'espère que ça peut aider. (Je suis désolé que j'ai peut-être mal compris le problème et que cela n'aide pas.)




Après avoir installé numpy , scipy , sklearn toujours une erreur

Solution:

Configuration de la variable de Path système pour Python et la variable d'environnement PYTHONPATH

Variables système: ajoutez C:\Python34 dans le chemin Variables utilisateur: ajoutez new: (nom) PYTHONPATH (valeur) C:\Python34\Lib\site-packages;




Aucune des autres réponses n'a fonctionné pour moi. Après quelques bricolages j'ai désinstallé sklearn:

pip uninstall sklearn

Puis j'ai supprimé le dossier sklearn d'ici: (ajustez le chemin vers votre système et la version python)

C:\Users\User\AppData\Roaming\Python\Python36\site-packages

Et l'installé de la roue de ce site: link

L'erreur était là probablement à cause d'un conflit de version avec sklearn installé ailleurs.




J'ai eu le même problème sur Windows. Le résoudre en installant Numpy + MKL depuis http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy (là, il est recommandé d'installer numpy + mkl avant les autres paquets qui en dépendent) comme suggéré par cette réponse .




Si vous utilisez Anaconda 2.7 64 bits, essayez

conda upgrade scikit-learn

et redémarrez le shell python, cela fonctionne pour moi.

Deuxième édition quand j'ai fait face au même problème et l'ai résolu:

conda upgrade scikit-learn

travaille aussi pour moi




Ma solution pour Python 3.6.5 64 bits Windows 10:

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

Pas besoin de redémarrer la ligne de commande mais vous pouvez le faire si vous le souhaitez. Il m'a fallu un jour pour réparer ce bug. J'espère que cette aide.