2015-11-27 1 views
3

Je souhaite créer une enva conda (disons B) qui a un module numpy fonctionnel. J'ai une installation de miniconda fonctionnante et une autre enva de conda (disons A) qui a fonctionné numpy mais peu importe quelle approche j'essaye je suis incapable d'obtenir un autre env avec un numpy fonctionnant.Problème lors de la création d'une conda env avec working numpy: `ImportError: impossible d'importer le nom scalarmath`

L'erreur que je reçois quand l'importation est la suivante:

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/home/sahaamo/miniconda2/envs/B/lib/python2.7/site-packages/numpy/__init__.py", line 170, in <module> 
    from . import add_newdocs 
    File "/home/sahaamo/miniconda2/envs/B/lib/python2.7/site-packages/numpy/add_newdocs.py", line 13, in <module> 
    from numpy.lib import add_newdoc 
    File "/home/sahaamo/miniconda2/envs/B/lib/python2.7/site-packages/numpy/lib/__init__.py", line 8, in <module> 
    from .type_check import * 
    File "/home/sahaamo/miniconda2/envs/B/lib/python2.7/site-packages/numpy/lib/type_check.py", line 11, in <module> 
    import numpy.core.numeric as _nx 
    File "/home/sahaamo/miniconda2/envs/B/lib/python2.7/site-packages/numpy/core/__init__.py", line 20, in <module> 
    from . import scalarmath 
ImportError: cannot import name scalarmath 

J'ai essayé 3 approches à ce jour:

  1. conda create -n B python=2.7.10 puis conda install -n B numpy=1.9.3
  2. conda create --name B --clone A
  3. conda create -n B python=2.7.10 numpy=1.9.3

Je reçois la même erreur à chaque fois. Ma plate-forme est Ubuntu 14.04. La sortie de which python est:

/home/sahaamo/miniconda2/envs/B/bin/python 

chemin Python Mon ressemble à ceci:

~$ python -c "import sys; print(sys.path)" 

['', 
'/home/sahaamo/miniconda2/envs/B/lib/python27.zip', 
'/home/sahaamo/miniconda2/envs/B/lib/python2.7', 
'/home/sahaamo/miniconda2/envs/B/lib/python2.7/plat-linux2', 
'/home/sahaamo/miniconda2/envs/B/lib/python2.7/lib-tk', 
'/home/sahaamo/miniconda2/envs/B/lib/python2.7/lib-old', 
'/home/sahaamo/miniconda2/envs/B/lib/python2.7/lib-dynload', 
'/home/sahaamo/miniconda2/envs/B/lib/python2.7/site-packages', 
'/home/sahaamo/miniconda2/envs/B/lib/python2.7/site-packages/setuptools-18.5-py2‌​.7.egg'] 
+0

Etes-vous sûr d'avoir basculé dans l'environnement nouvellement créé? Essayez '~ $ source activate B', en supposant que' B' est le nom de l'environnement que vous venez de créer. Votre invite bash devrait changer en '(B) ~ $'. Vous pouvez voir quels environnements sont disponibles en utilisant '~ $ conda info --envs'. –

+0

activé. En fait, depuis Numpy fonctionne dans d'autres environnements de toute façon, ne pas basculer ne donnera pas l'erreur. – amolsah

+1

Pourriez-vous m'amuser et essayer de créer un nouvel env contenant seulement numpy sans cloner, par ex. en utilisant 'conda create -n test python = 2.7.10 numpy = 1.9.3'? Voyez-vous une sortie inhabituelle de 'conda'? –

Répondre

0

Il semble que le demandeur a déjà son problème résolu, mais j'eu un problème similaire et suis tombé sur la question donc je Je vais le poster pour les autres. Mon problème était un peu bête en ce que je n'ai pas d'abord spécifié python avant d'appeler le script, donc j'ai fait script.py au lieu de python script.py donc je n'ai pas appelé Miniconda python exécutable, ce qui signifie qu'il n'a pas pu importer quoi que ce soit de la conda env.