web-dev-qa-db-fra.com

Impossible d'importer Scikit-Learn

J'ai essayé d'installer scikit-learn sur ma Linux Mint 12 mais j'ai échoué. J'ai téléchargé le paquet depuis http://pypi.python.org/pypi/scikit-learn/ et l'installer avec

Sudo python2.7 setup.py install

J'ai ensuite changé le répertoire en home et lancé python2.7 Shell. En important sklearn j'ai eu:

>>> import sklearn
/usr/lib/python2.7/dist-packages/scipy/spatial/__init__.py:7: RuntimeWarning: 
numpy.dtype size changed, may indicate binary incompatibility
    from ckdtree import *
/usr/lib/python2.7/dist-packages/scipy/spatial/__init__.py:7: RuntimeWarning:
numpy.ndarray size changed, may indicate binary incompatibility
    from ckdtree import *
/usr/lib/python2.7/dist-packages/scipy/spatial/__init__.py:7: RuntimeWarning: 
numpy.ufunc size changed, may indicate binary incompatibility
    from ckdtree import *
/usr/lib/python2.7/dist-packages/scipy/spatial/__init__.py:8: RuntimeWarning: 
numpy.dtype size changed, may indicate binary incompatibility
    from qhull import *
/usr/lib/python2.7/dist-packages/scipy/spatial/__init__.py:8: RuntimeWarning: 
numpy.ndarray size changed, may indicate binary incompatibility
    from qhull import *
/usr/lib/python2.7/dist-packages/scipy/spatial/__init__.py:8: RuntimeWarning:  
numpy.ufunc size changed, may indicate binary incompatibility
    from qhull import *

Je pense que le problème est avec spatial de Scipy. C'est parce que quand je fais

>>> from scipy import spatial

Je reçois la même erreur que pour Scikit-learn.

S'il vous plaît aider. Merci. 

EDIT: Nouvelle erreur.

>>> import sklearn
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/dist-packages/scikit_learn-0.12_git-py2.7-linux-
x86_64.Egg/sklearn/__init__.py", line 17, in <module>
    from .base import clone
  File "/usr/local/lib/python2.7/dist-packages/scikit_learn-0.12_git-py2.7-linux-
x86_64.Egg/sklearn/base.py", line 11, in <module>
    from .metrics import r2_score
  File "/usr/local/lib/python2.7/dist-packages/scikit_learn-0.12_git-py2.7-linux-
x86_64.Egg/sklearn/metrics/__init__.py", line 6, in <module>
    from .metrics import confusion_matrix, roc_curve, auc, precision_score, \
  File "/usr/local/lib/python2.7/dist-packages/scikit_learn-0.12_git-py2.7-linux-  
x86_64.Egg/sklearn/metrics/metrics.py", line 17, in <module>
    from ..utils import check_arrays
  File "/usr/local/lib/python2.7/dist-packages/scikit_learn-0.12_git-py2.7-linux-
x86_64.Egg/sklearn/utils/__init__.py", line 9, in <module>
    from .murmurhash import murmurhash3_32
  File "numpy.pxd", line 174, in init sklearn.utils.murmurhash (sklearn/utils
/murmurhash.c:4776)
ValueError: numpy.ndarray has the wrong size, try recompiling
8
Rishi

Je ne suis pas vraiment sûr, mais selon ceci , cette erreur se produit lorsqu'un package dépendant de numpy est compilé et cible une version spécifique (ou une plate-forme spécifique), et que ce package est ensuite installé dans un environnement différent. Comment avez-vous installé ces deux paquets? (Numpy et Scipy)

Je suggérerais de désinstaller les deux, puis de réinstaller SciPy, soit en utilisant pip ou de la source .

8
mgibsonbr

Je suis tombé dessus aujourd'hui sur OS X El Capitan. Malheureusement, la réinstallation/l’installation n’a pas fonctionné, car le problème était que l’installation numpy native d’OS X était préférable à celle installée par pip.

J'ai pu résoudre ce problème en suivant les instructions fournies dans: https://Apple.stackexchange.com/a/223163

En particulier, j’ai utilisé l’approche consistant à fixer le chemin python pour préférer les bibliothèques pip aux bibliothèques natives OS X:

Créez un fichier appelé fix_mac_path.pth dans /Library/Python/2.7/site-packages et comportant les éléments suivants:

import sys; std_paths=[p for p in sys.path if p.startswith('/System/')]; sys.path=[p for p in sys.path if not p.startswith('/System/')]+std_paths

1
pixel_warrior

j'avais exactement le même problème. J'ai réussi à le faire fonctionner en installant le binaire Windows pour les fenêtres 64 bits à partir de http://www.lfd.uci.edu/~gohlke/pythonlibs/#scikit-learn . J'espère que cela fonctionne pour toi

0
user2558963