Numpy: ImportError: numpy.core._multiarray_umath falhou ao importar

Criado em 3 set. 2018  ·  36Comentários  ·  Fonte: numpy/numpy

Olá,

Há vários pacotes que estou instalando que requerem NumPy (por exemplo, TensorFlow), e não consigo instalá-los e importá-los por causa de um ImportError no lado numpy.

Isso está acontecendo com pip install e com a construção da fonte.

Reproduzindo exemplo de código:

import numpy as np
import tensorflow as tf

Mensagem de erro:

ImportError: numpy.core._multiarray_umath failed to import

Informações sobre a versão Numpy / Python:

'1.16.0.dev0+cdbf35b'

Comentários muito úteis

pip install - atualização numpy

isso remove a versão anterior e instala a versão mais recente .. isso resolveu o problema para mim

Todos 36 comentários

Acho que isso também pode ser um problema do sistema, porque até mesmo um numpy mais velho está me dando o mesmo erro

Precisamos de mais informações para ajudá-lo. import numpy as np sucesso e import tensorflow as tf falhou? Se for o primeiro, deve haver mais informações sobre a exceção. Se for o segundo, onde você obteve o tensorflow? Qual python você está usando?

Olá @mattip :

É o último (como em: Eu posso import numpy tudo bem, mas TF é o que está falhando ao importar).

Aqui está o rastreamento completo (estou usando o arquivo shell do Miniconda mais recente):

`` `Python 3.6.5 | Anaconda, Inc. | (padrão, 29 de abril de 2018, 16:14:56)
Digite 'direitos autorais', 'créditos' ou 'licença' para obter mais informações
IPython 6.5.0 - Um Python interativo aprimorado. Modelo '?' para ajuda.

Em [1]: importar numpy como np

Em [2]: importar tensorflow como tf

ImportError Traceback (última chamada mais recente)

ImportError: numpy.core._multiarray_umath falhou ao importar

ImportError Traceback (última chamada mais recente)

ImportError: numpy.core._multiarray_umath falhou ao importar

ImportError Traceback (última chamada mais recente)

ImportError: numpy.core._multiarray_umath falhou ao importar

ImportError Traceback (última chamada mais recente)
ImportError: numpy.core._multiarray_umath falhou ao importar

Em [3]: np .__ version__
Fora [3]: '1.15.1'
`` `

Sempre criei Numpy e Scipy a partir da fonte desde que queria vincular ao meu MKL local, mas quando comecei a obter o ImportError, comecei a mexer em pip install ing numpy, mas esse erro ainda está lá

In [3]: np.__version__
Out[3]: '1.15.1'

Isso é estranho, o módulo _multiarray_umath é novo no master. Dito isso, suspeito que o recente rearranjo do código esteja na raiz de seus problemas.

Se você estiver usando o desenvolvimento numpy, pode querer recompilar o tensorflow, se possível.

E talvez deletar todas as versões numpy instaladas fora do sistema e reinstalar.

Obrigado @charris ! Quase certamente parece que havia algum cache ruim causando esse erro de importação; Acabei de construir um Docker limpo e testei as importações do numpy (pip e build) e Tensorflow (apenas pip por enquanto), e as duas versões do numpy foram verificadas de forma satisfatória ao importar o TF!

Vou continuar a instalar outros pacotes e relatar se foi realmente uma má coincidência ou se alguns outros pacotes estão fazendo algo perverso pelo caminho!

Sim, tudo está bem! Obrigado pelas respostas rápidas, fechando agora (ainda não sei por que as coisas deram errado, mas pelo menos funciona agora!).

Link para o PR de reorganização do código # 10915.

Oi, enfrentando o mesmo problema com o Django (aviso com exatamente o mesmo erro), e qualquer reinstalação, limpar o cache (pip) não está funcionando. Alguma ideia de por que isso está acontecendo?
obrigado!

@ amehrdad88 isso não está relacionado ao Django. O que importa é como você instalou o Python, e como você instalou o NumPy e os outros pacotes que você usa que dependem do NumPy. Verifique se você está usando o que pensa que está usando (por exemplo, tudo do mesmo env virtualenv / conda) olhando tracebacks ou inspecionando numpy.__file__ .

@ amehrdad88 isso não está relacionado ao Django. O que importa é como você instalou o Python, e como você instalou o NumPy e os outros pacotes que você usa que dependem do NumPy. Verifique se você está usando o que pensa que está usando (por exemplo, tudo do mesmo env virtualenv / conda) olhando tracebacks ou inspecionando numpy.__file__ .

Ok, obrigado, verificarei, mas acabei de usar o instalador Python do site oficial, o virtualenv e tudo o mais do pip, então não deve representar nenhum grande problema! Vou tentar reinstalar tudo.

@rgommers parece ser um problema com outros pacotes, mas não tenho certeza de qual. Reinstalei tudo e tive o mesmo problema, então acabei de criar um venv de teste com apenas numpy e tensorflow; importar tensorflow funciona. Quando eu instalo os outros pacotes (com pip) de um arquivo requirements.txt, o erro aparece novamente quando tento importar o tensorflow.

Será que um dos pacotes que estão sendo carregados contém um erro em relação a numpy? Este pacote seria carregado mesmo se eu apenas importasse tensorflow?

Observação: eu também recebi um aviso "FutureWarning: a conversão do segundo argumento de issubdtype de float para np.floating está obsoleto", que desapareceu com a atualização de h5py

@ amehrdad88 este problema foi encerrado. Documente exatamente quais comandos você está executando e tente importar o tensorflow após cada etapa subsequente à instalação do tensorflow. Se você ainda acha que o problema é com o NumPy e não com outro pacote, abra um novo problema e anexe a documentação junto com a saída.

Será que um dos pacotes que estão sendo carregados contém um erro em relação a numpy? Este pacote seria carregado mesmo se eu apenas importasse tensorflow?

não, isso é bastante improvável. o que está acontecendo é provavelmente pip reinstalando numpy de alguma forma porque foi puxado por requirements.txt . Ou você tem um pacote em seu PYTHONPATH em algum lugar. Ou. Se você examinar e importar pacotes um por um, deverá ser capaz de descobrir qual deles é problemático e se está puxando algo de fora do seu virtualenv limpo.

Estou começando a ter esse comportamento ao construir meu aplicativo no CircleCI. Na casca:

Python 2.7.14 (default, Sep 18 2017, 00:00:00)
[GCC 4.8.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy as np
>>> import pandas as pd
ImportError: No module named _multiarray_umath
ImportError: No module named _multiarray_umath
ImportError: No module named _multiarray_umath
ImportError: No module named _multiarray_umath
>>> np.__file__
'/usr/local/lib/python2.7/dist-packages/numpy/__init__.pyc'
>>> pd.__file__
'/usr/local/lib/python2.7/dist-packages/pandas/__init__.pyc'

Esta compilação estava funcionando bem 4 dias atrás, mas agora minha compilação está falhando sem nenhuma alteração no arquivo requirements.txt. Algo mudou recentemente? Estou executando o numpy 1.14.3 e os pandas 0.20.3

Apenas como acompanhamento, pip install ing numpy primeiro (separadamente) e, em seguida, os pandas fizeram o truque para mim ...

Estou começando a ter esse comportamento ao construir meu aplicativo no CircleCI. Na casca:

Python 2.7.14 (default, Sep 18 2017, 00:00:00)
[GCC 4.8.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy as np
>>> import pandas as pd
ImportError: No module named _multiarray_umath
ImportError: No module named _multiarray_umath
ImportError: No module named _multiarray_umath
ImportError: No module named _multiarray_umath
>>> np.__file__
'/usr/local/lib/python2.7/dist-packages/numpy/__init__.pyc'
>>> pd.__file__
'/usr/local/lib/python2.7/dist-packages/pandas/__init__.pyc'

Esta compilação estava funcionando bem 4 dias atrás, mas agora minha compilação está falhando sem nenhuma alteração no arquivo requirements.txt. Algo mudou recentemente? Estou executando o numpy 1.14.3 e os pandas 0.20.3

eu tenho o mesmo problema, tudo estava funcionando bem 3 dias atrás. Agora, de repente, há este erro de importação quando tento carregar arquivos em conserva

O módulo de extensão c _multiarray_umath é novo no numpy 1.16.0 e pode indicar uma mistura de versões ou expectativas de versão em algum lugar. Observe que este problema está encerrado. Se você acredita que há um problema com o numpy, abra um novo problema detalhando exatamente o que você está fazendo.

Estou tendo um problema semelhante ao tentar carregar arquivos em conserva:

with open(fl[0], 'rb') as f:
    pickle.load(f)
ModuleNotFoundError                       Traceback (most recent call last)
<ipython-input-24-571299641ef6> in <module>
      1 with open(fl[0], 'rb') as f:
----> 2     pickle.load(f)

ModuleNotFoundError: No module named 'numpy.core._multiarray_umath'

Talvez deva ser reaberto. Não tenho certeza se isso é relevante.

Também consigo ao tentar usar pd.read_pickle :


Full Traceback

pd.read_pickle('/path/to/a/dataframe/foo.df')
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in try_read(path, encoding)
    165                 # We want to silencce any warnings about, e.g. moved modules.
--> 166                 return read_wrapper(lambda f: pkl.load(f))
    167         except Exception:

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in read_wrapper(func)
    148         try:
--> 149             return func(f)
    150         finally:

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in <lambda>(f)
    165                 # We want to silencce any warnings about, e.g. moved modules.
--> 166                 return read_wrapper(lambda f: pkl.load(f))
    167         except Exception:

ImportError: No module named 'numpy.core._multiarray_umath'

During handling of the above exception, another exception occurred:

ImportError                               Traceback (most recent call last)
~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in try_read(path, encoding)
    170                 return read_wrapper(
--> 171                     lambda f: pc.load(f, encoding=encoding, compat=False))
    172             # compat pickle

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in read_wrapper(func)
    148         try:
--> 149             return func(f)
    150         finally:

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in <lambda>(f)
    170                 return read_wrapper(
--> 171                     lambda f: pc.load(f, encoding=encoding, compat=False))
    172             # compat pickle

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/compat/pickle_compat.py in load(fh, encoding, compat, is_verbose)
    211 
--> 212         return up.load()
    213     except:

~/anaconda3/envs/py35/lib/python3.5/pickle.py in load(self)
   1042                 assert isinstance(key, bytes_types)
-> 1043                 dispatch[key[0]](self)
   1044         except _Stop as stopinst:

~/anaconda3/envs/py35/lib/python3.5/pickle.py in load_stack_global(self)
   1350             raise UnpicklingError("STACK_GLOBAL requires str")
-> 1351         self.append(self.find_class(module, name))
   1352     dispatch[STACK_GLOBAL[0]] = load_stack_global

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/compat/pickle_compat.py in find_class(self, module, name)
    134             module, name = _class_locations_map.get(key, key)
--> 135             return super(Unpickler, self).find_class(module, name)
    136 

~/anaconda3/envs/py35/lib/python3.5/pickle.py in find_class(self, module, name)
   1391                 module = _compat_pickle.IMPORT_MAPPING[module]
-> 1392         __import__(module, level=0)
   1393         if self.proto >= 4:

ImportError: No module named 'numpy.core._multiarray_umath'

During handling of the above exception, another exception occurred:

ImportError                               Traceback (most recent call last)
~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in read_pickle(path, compression)
    176     try:
--> 177         return try_read(path)
    178     except:

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in try_read(path, encoding)
    174                 return read_wrapper(
--> 175                     lambda f: pc.load(f, encoding=encoding, compat=True))
    176     try:

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in read_wrapper(func)
    148         try:
--> 149             return func(f)
    150         finally:

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in <lambda>(f)
    174                 return read_wrapper(
--> 175                     lambda f: pc.load(f, encoding=encoding, compat=True))
    176     try:

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/compat/pickle_compat.py in load(fh, encoding, compat, is_verbose)
    211 
--> 212         return up.load()
    213     except:

~/anaconda3/envs/py35/lib/python3.5/pickle.py in load(self)
   1042                 assert isinstance(key, bytes_types)
-> 1043                 dispatch[key[0]](self)
   1044         except _Stop as stopinst:

~/anaconda3/envs/py35/lib/python3.5/pickle.py in load_stack_global(self)
   1350             raise UnpicklingError("STACK_GLOBAL requires str")
-> 1351         self.append(self.find_class(module, name))
   1352     dispatch[STACK_GLOBAL[0]] = load_stack_global

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/compat/pickle_compat.py in find_class(self, module, name)
    134             module, name = _class_locations_map.get(key, key)
--> 135             return super(Unpickler, self).find_class(module, name)
    136 

~/anaconda3/envs/py35/lib/python3.5/pickle.py in find_class(self, module, name)
   1391                 module = _compat_pickle.IMPORT_MAPPING[module]
-> 1392         __import__(module, level=0)
   1393         if self.proto >= 4:

ImportError: No module named 'numpy.core._multiarray_umath'

During handling of the above exception, another exception occurred:

ImportError                               Traceback (most recent call last)
~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in try_read(path, encoding)
    165                 # We want to silencce any warnings about, e.g. moved modules.
--> 166                 return read_wrapper(lambda f: pkl.load(f))
    167         except Exception:

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in read_wrapper(func)
    148         try:
--> 149             return func(f)
    150         finally:

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in <lambda>(f)
    165                 # We want to silencce any warnings about, e.g. moved modules.
--> 166                 return read_wrapper(lambda f: pkl.load(f))
    167         except Exception:

ImportError: No module named 'numpy.core._multiarray_umath'

During handling of the above exception, another exception occurred:

ImportError                               Traceback (most recent call last)
~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in try_read(path, encoding)
    170                 return read_wrapper(
--> 171                     lambda f: pc.load(f, encoding=encoding, compat=False))
    172             # compat pickle

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in read_wrapper(func)
    148         try:
--> 149             return func(f)
    150         finally:

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in <lambda>(f)
    170                 return read_wrapper(
--> 171                     lambda f: pc.load(f, encoding=encoding, compat=False))
    172             # compat pickle

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/compat/pickle_compat.py in load(fh, encoding, compat, is_verbose)
    211 
--> 212         return up.load()
    213     except:

~/anaconda3/envs/py35/lib/python3.5/pickle.py in load(self)
   1042                 assert isinstance(key, bytes_types)
-> 1043                 dispatch[key[0]](self)
   1044         except _Stop as stopinst:

~/anaconda3/envs/py35/lib/python3.5/pickle.py in load_stack_global(self)
   1350             raise UnpicklingError("STACK_GLOBAL requires str")
-> 1351         self.append(self.find_class(module, name))
   1352     dispatch[STACK_GLOBAL[0]] = load_stack_global

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/compat/pickle_compat.py in find_class(self, module, name)
    134             module, name = _class_locations_map.get(key, key)
--> 135             return super(Unpickler, self).find_class(module, name)
    136 

~/anaconda3/envs/py35/lib/python3.5/pickle.py in find_class(self, module, name)
   1391                 module = _compat_pickle.IMPORT_MAPPING[module]
-> 1392         __import__(module, level=0)
   1393         if self.proto >= 4:

ImportError: No module named 'numpy.core._multiarray_umath'

During handling of the above exception, another exception occurred:

ImportError                               Traceback (most recent call last)
<ipython-input-44-2ad6813d006d> in <module>()
----> 1 pd.read_pickle('/Users/riley/main/build_0003/reps/lobsang/konami-api/src/app/v0/foo.df')

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in read_pickle(path, compression)
    178     except:
    179         if PY3:
--> 180             return try_read(path, encoding='latin1')
    181         raise
    182 

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in try_read(path, encoding)
    173             except:
    174                 return read_wrapper(
--> 175                     lambda f: pc.load(f, encoding=encoding, compat=True))
    176     try:
    177         return try_read(path)

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in read_wrapper(func)
    147                             is_text=False)
    148         try:
--> 149             return func(f)
    150         finally:
    151             for _f in fh:

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/io/pickle.py in <lambda>(f)
    173             except:
    174                 return read_wrapper(
--> 175                     lambda f: pc.load(f, encoding=encoding, compat=True))
    176     try:
    177         return try_read(path)

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/compat/pickle_compat.py in load(fh, encoding, compat, is_verbose)
    210         up.is_verbose = is_verbose
    211 
--> 212         return up.load()
    213     except:
    214         raise

~/anaconda3/envs/py35/lib/python3.5/pickle.py in load(self)
   1041                     raise EOFError
   1042                 assert isinstance(key, bytes_types)
-> 1043                 dispatch[key[0]](self)
   1044         except _Stop as stopinst:
   1045             return stopinst.value

~/anaconda3/envs/py35/lib/python3.5/pickle.py in load_stack_global(self)
   1349         if type(name) is not str or type(module) is not str:
   1350             raise UnpicklingError("STACK_GLOBAL requires str")
-> 1351         self.append(self.find_class(module, name))
   1352     dispatch[STACK_GLOBAL[0]] = load_stack_global
   1353 

~/anaconda3/envs/py35/lib/python3.5/site-packages/pandas/compat/pickle_compat.py in find_class(self, module, name)
    133             key = (module, name)
    134             module, name = _class_locations_map.get(key, key)
--> 135             return super(Unpickler, self).find_class(module, name)
    136 
    137 else:

~/anaconda3/envs/py35/lib/python3.5/pickle.py in find_class(self, module, name)
   1390             elif module in _compat_pickle.IMPORT_MAPPING:
   1391                 module = _compat_pickle.IMPORT_MAPPING[module]
-> 1392         __import__(module, level=0)
   1393         if self.proto >= 4:
   1394             return _getattribute(sys.modules[module], name)[0]

ImportError: No module named 'numpy.core._multiarray_umath'

@rileypeterson, pode ser uma duplicata do problema # 12837. Em qualquer caso, os problemas de decapagem com 1.16.0 são corrigidos por # 12842 (backported para 1.16.1 em # 12869). Será resolvido com o lançamento do 1.16.1.

pip install - atualização numpy

isso remove a versão anterior e instala a versão mais recente .. isso resolveu o problema para mim

Eu recebo o mesmo problema, numpy.core._multiarray_umath falhou ao importar

Eu finalmente descobri , É porque a versão numpy é muito baixa, atualize o numpy para 1.16.2 e está tudo bem

Desinstale o numpy e depois atualize e atualize

pip install -U numpy atualização numpy nele

Isso funcionou :)
pip install - atualização numpy

no prompt do anaconda:
pip uninstall numpy

então:
pip install numpy

funcionou para mim!

Olá,
Há vários pacotes que estou instalando que requerem NumPy (por exemplo, TensorFlow), e não consigo instalá-los e importá-los por causa de um ImportError no lado numpy.
Isso está acontecendo com a instalação do pip e com a construção a partir da origem.
Reproduzindo exemplo de código:
importar numpy como np
importar tensorflow como tf
Mensagem de erro:
ImportError: numpy.core._multiarray_umath falhou ao importar

Informações sobre a versão Numpy / Python:
'1.16.0.dev0 + cdbf35b'

Eu enfrentei o mesmo problema.
Resolvi o problema desinstalando Theano, tensorflow e keras; em seguida, instalei-os nesta ordem:

  1. theano
  2. tensorflow
  3. keras

Desinstale o numpy e depois atualize e atualize

Eu te pego! Se alguém fizer perguntas em inglês, você responde em chinês!

@ datianshi21 nosso idioma oficial é o inglês. O Google tradutor diz que seu comentário é "Desinstalar e atualizar Numpy
Basta servir você! Outras pessoas fazem perguntas em inglês, você responde em chinês! "
Você é um robô?

pip install --upgrade numpy --user me deu o erro:

mxnet-mkl 1.4.0 has requirement numpy<1.15.0,>=1.8.2, but you'll have numpy 1.16.3 which is incompatible.

Tudo funcionou após a desinstalação de mxnet-mkl .

Começou a funcionar para mim quando instalei o pandas. Não tenho ideia do porquê.

https://github.com/numpy/numpy/issues/11871#issuecomment -487995082

Pandas instalam numpy como dependência.

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

dcsaba89 picture dcsaba89  ·  3Comentários

Kreol64 picture Kreol64  ·  3Comentários

astrofrog picture astrofrog  ·  4Comentários

marcocaccin picture marcocaccin  ·  4Comentários

kevinzhai80 picture kevinzhai80  ·  4Comentários