web-dev-qa-db-fra.com

Comment puis-je mettre à jour NumPy?

Quand j’ai installé OpenCV avec Homebrew (brew), j’ai ce problème à chaque fois que j’exécute cette commande pour tester python -c "import cv2":

RuntimeError: module compiled against API version 9 but this version of numpy is 6
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: numpy.core.multiarray failed to import

J'ai essayé de mettre à jour NumPy, mais c'est déroutant:

>>> import numpy
>>> print numpy.__version__
1.6.1

Quand je lance brew pour mettre NumPy à niveau, j'ai ce problème:

brew install -u numpy
Warning: numpy-1.9.1 already installed

Quand je l'ai désinstallé:

Sudo pip install numpy
Requirement already satisfied (use --upgrade to upgrade): numpy in ./anaconda/lib/python2.7/site-packages

J'ai suivi cette question et supprimé Anaconda de mon mac.

pip install numpy
Requirement already satisfied (use --upgrade to upgrade): numpy in /Library/Python/2.7/site-packages

Mais rien n'a changé. Comment lier la version de NumPy à OpenCV?

40
user3378649

Parce que nous avons deux installations NumPy dans le système. L'un est installé par Homebrew et le second par pip. Donc, afin de résoudre le problème, nous devons en supprimer un et utiliser l’installation par défaut de NumPy par OpenCV.

Vérifiez le chemin,

import numpy
print numpy.__path__

et supprimez-le manuellement en utilisant rm.

39
user3378649

L'erreur que vous avez mentionnée se produit lorsque vous avez deux versions de NumPy sur votre système. Comme vous l'avez mentionné, la version de NumPy que vous avez importée n'est toujours pas mise à niveau puisque vous avez essayé de la mettre à niveau via pip (la mise à niveau de la version existante dans '/Library/Python/2.7/site-packages').

Cependant Python charge toujours les paquets depuis '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy' où résident les packages pré-installés.

Pour mettre à niveau cette version, vous devez utiliser easy_install. L’autre solution au problème consiste à utiliser virtualenv et à configurer un nouvel environnement avec toutes les conditions requises.

13
Elmira

Quand vous avez déjà une ancienne version de NumPy, utilisez ceci:

pip install numpy --upgrade

Si cela ne fonctionne toujours pas, essayez:

pip install numpy --upgrade --ignore-installed
11
Rebecca

Pour votre information, lorsque vous utilisez ou importez TensorFlow, une erreur similaire peut survenir, telle que (causée par NumPy):

RuntimeError: module compiled against API version 0xa but this version of numpy is 0x9
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/__init__.py", line 23, in <module>
    from tensorflow.python import *
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/__init__.py", line 60, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 28, in <module>
    _pywrap_tensorflow = swig_import_helper()
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow', fp, pathname, description)
ImportError: numpy.core.multiarray failed to import


Error importing tensorflow.  Unless you are using bazel,
you should not try to import tensorflow from its source directory;
please exit the tensorflow source tree, and relaunch your python interpreter
from there.

J'ai suivi la solution d'Elmira et Drew, Sudo easy_install numpy, et il travaillé!

Sudo easy_install numpy
Searching for numpy
Best match: numpy 1.11.3
Removing numpy 1.8.2 from easy-install.pth file
Adding numpy 1.11.3 to easy-install.pth file

Using /usr/local/lib/python2.7/dist-packages
Processing dependencies for numpy
Finished processing dependencies for numpy

Après cela, je pourrais utiliser TensorFlow sans erreur.

6
Jaeyoung Lee

Parce que vous avez plusieurs versions de NumPy installées.

Essayez pip uninstall numpy et pip list | grep numpy plusieurs fois, jusqu'à ce que pip list | grep numpy.

Ensuite pip install numpy vous obtiendrez la dernière version de NumPy.

3
Xing Shi

J'ai essayé de faire Sudo pip uninstall numpy à la place, car rm ne fonctionnait pas au début.

Espérons que cela aide.

Désinstallez puis réinstallez-le.

3
0bserver07

Si vous ne rencontrez aucune erreur de permission avec

pip install -U numpy

essayer:

pip install --user -U numpy
2
abaro

Cela fonctionne pour moi:

pip install numpy --upgrade
2
Luna Kong

Tous les mêmes.

   Sudo easy_install numpy

Mon traçage

Searching for numpy

Best match: numpy 1.13.0

Adding numpy 1.13.0 to easy-install.pth file

Using /Library/Python/2.7/site-packages

Processing dependencies for numpy
1
Luo Bo

Après l'installation de pytorch, j'ai eu une erreur similaire quand j'ai utilisé:

import torch

Supprimer NumPy n'a pas aidé (j'ai renommé NumPy, alors je suis revenu après que cela ne fonctionne pas). Les commandes suivantes ont fonctionné pour moi:

Sudo pip install numpy --upgrade
Sudo easy_install numpy
1
vivkul

Mettre à jour numpy

Pour python 2

pip install numpy --upgrade

Vous auriez également besoin de mettre à jour vos tables pour la version mise à jour de numpy. oui,

pip install tables --upgrade

Pour python

pip3 install numpy --upgrade

De même, les tables pour python3: -

pip3 install tables --upgrade

remarque:

Vous devez vérifier quelle python utilisez-vous. Pip pour python 2.7+ ou pip3 pour python = 3 +

0
X Personified

Si vous êtes coincé avec une machine sur laquelle vous n'avez pas accès à la racine, il est préférable de traiter avec une installation personnalisée Python.

L'installation d'Anaconda a fonctionné à merveille:

Après l'installation,

[bash] $/xxx/devTools/python/anaconda/bin/pip list --format = columns | grep numpy

numpy 1.13.3 numpydoc 0.7.0

0
147.3k