Привет,
Есть множество пакетов, которые я устанавливаю, для которых требуется NumPy (например, TensorFlow), и я не могу установить и импортировать их из-за ImportError на стороне numpy.
Это происходит как с pip install
и с сборкой из исходного кода.
import numpy as np
import tensorflow as tf
ImportError: numpy.core._multiarray_umath failed to import
'1.16.0.dev0+cdbf35b'
Я чувствую, что это может быть какая-то системная проблема, потому что даже более старый numpy выдает мне ту же ошибку
Нам нужна дополнительная информация, чтобы помочь вам. Выполняется ли import numpy as np
успешно, а затем import tensorflow as tf
неуспешно? Если это первое, то должно быть больше информации об исключении. Если второй, то откуда у вас тензорный поток? Какой питон вы используете?
Привет @mattip :
Это последнее (например: я могу import numpy
все хорошо, но тогда TF - это тот, который не может импортировать).
Вот полный след (я использую последнюю версию файла оболочки Miniconda):
`` Python 3.6.5 | Anaconda, Inc. | (по умолчанию, 29 апреля 2018 г., 16:14:56)
Введите "авторское право", "кредиты" или "лицензия" для получения дополнительной информации.
IPython 6.5.0 - улучшенный интерактивный Python. Тип '?' за помощью.
В [1]: импортировать numpy как np
ImportError Traceback (последний вызов последним)
ImportError Traceback (последний вызов последним)
ImportError Traceback (последний вызов последним)
ImportError Traceback (последний вызов последним)
ImportError: numpy.core._multiarray_umath не удалось импортировать
В [3]: np .__ version__
Out [3]: '1.15.1'
`` ''
Я всегда создавал Numpy и Scipy из исходного кода, так как я хотел связать с моим локальным MKL, но когда я начал получать ImportError, я начал возиться с pip install
ing numpy, но эта ошибка все еще существует
In [3]: np.__version__
Out[3]: '1.15.1'
Странно, но модуль _multiarray_umath
является новым в master. Тем не менее, я подозреваю, что недавняя перестановка кода лежит в основе ваших проблем.
Если вы используете разработку numpy, возможно, вам захочется перекомпилировать тензорный поток, если это возможно.
И, возможно, удалите все установленные несистемные версии numpy и переустановите.
Спасибо @charris ! Почти наверняка похоже, что причиной этой ошибки импорта был какой-то плохой кеш; Я только что построил чистый Docker и только что протестировал импорт numpy (как pip, так и build) и Tensorflow (пока только pip), и обе версии numpy проверяли все хорошо при импорте TF!
Я продолжу устанавливать другие пакеты и доложу, действительно ли это было плохое совпадение, или есть какие-то другие пакеты, делающие что-то непослушное по пути!
Ага, все хорошо! Спасибо за быстрые ответы, закрытие сейчас (до сих пор не знаю, почему что-то пошло не так, но, по крайней мере, теперь это работает!).
Ссылка на PR реорганизации кода # 10915.
Привет, столкнулся с той же проблемой с Django (предупреждение с той же ошибкой), и любая переустановка, очистка кеша (pip) не работает. Есть идеи, почему это происходит?
Благодарность!
@ amehrdad88 это не связано с Django. Важно то, как вы установили Python и как вы установили NumPy и другие используемые вами пакеты, которые зависят от NumPy. Убедитесь, что вы используете то, что, по вашему мнению, используете (например, все из того же окружения virtualenv / conda), просмотрев трассировки или проверив numpy.__file__
.
@ amehrdad88 это не связано с Django. Важно то, как вы установили Python и как вы установили NumPy и другие используемые вами пакеты, которые зависят от NumPy. Убедитесь, что вы используете то, что, по вашему мнению, используете (например, все из того же окружения virtualenv / conda), просмотрев трассировки или проверив
numpy.__file__
.
Хорошо, спасибо, я проверю, хотя я просто использовал установщик Python с официального сайта, затем virtualenv и все остальное из pip, поэтому не должно вызывать серьезных проблем! Попробую все переустановить.
@rgommers кажется проблемой с другими пакетами, но не уверен, с какими. Я переустановил все и столкнулся с той же проблемой, поэтому я просто создал тестовый venv только с numpy и tensorflow; импорт тензорного потока работает. Когда я затем устанавливаю другие пакеты (с помощью pip) из файла requirements.txt, ошибка появляется снова, когда я пытаюсь импортировать тензорный поток.
Может быть, в одном из загружаемых пакетов есть ошибка в отношении numpy? Будет ли этот пакет загружен, даже если я импортирую только тензорный поток?
Примечание: у меня также было предупреждение «FutureWarning: преобразование второго аргумента issubdtype из float
в np.floating
устарело», которое исчезло после обновления h5py
@ amehrdad88 этот вопрос закрыт. Пожалуйста, задокументируйте, какие именно команды вы выполняете, и попытайтесь импортировать тензорный поток после каждого шага после установки тензорного потока. Если вы все еще думаете, что проблема связана с NumPy, а не с другим пакетом, откройте новую проблему и приложите документацию к выходным данным.
Может быть, в одном из загружаемых пакетов есть ошибка в отношении numpy? Будет ли этот пакет загружен, даже если я импортирую только тензорный поток?
нет, это маловероятно. что происходит, вероятно, pip
переустановка numpy каким-то образом, потому что он втянут через requirements.txt
. Или у вас есть пакет где-то на вашем PYTHONPATH. Или
Я начинаю получать такое поведение при создании своего приложения на CircleCI. В оболочке:
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'
Эта сборка работала нормально 4 дня назад, но теперь моя сборка не работает без каких-либо изменений в файле requirements.txt. Что-то недавно изменилось? Я использую numpy 1.14.3 и pandas 0.20.3
Как продолжение, сначала pip install
ing numpy (отдельно), а затем pandas сделали свое дело за меня ...
Я начинаю получать такое поведение при создании своего приложения на CircleCI. В оболочке:
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'
Эта сборка работала нормально 4 дня назад, но теперь моя сборка не работает без каких-либо изменений в файле requirements.txt. Что-то недавно изменилось? Я использую numpy 1.14.3 и pandas 0.20.3
У меня такая же проблема, 3 дня назад все работало нормально. Теперь внезапно возникает эта ошибка импорта, когда я пытаюсь загрузить маринованные файлы
Модуль c-extension _multiarray_umath
является новым для numpy 1.16.0 и может где-то указывать на сочетание версий или ожидаемых версий. Обратите внимание, что эта проблема закрыта. Если вы считаете, что существует проблема с numpy, откройте новую проблему, подробно описав, что вы делаете.
У меня возникает аналогичная проблема при попытке загрузить маринованные файлы:
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'
Может быть, это стоит открыть заново. Не уверен, актуально ли это .
Также получаю это при попытке использовать pd.read_pickle
:
Полная обратная связь
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, это может быть дубликат проблемы №12837. В любом случае, проблемы с травлением в 1.16.0 исправлены # 12842 (бэкпортированы на 1.16.1 в # 12869). Решится с выходом 1.16.1.
pip install --upgrade numpy
это удаляет предыдущую версию и устанавливает более новую версию .. это решило проблему для меня
У меня та же проблема, numpy.core._multiarray_umath не удалось импортировать
Я наконец понял это , Это потому, что версия numpy слишком низкая, обновите numpy до 1.16.2, и все в порядке
Удалите numpy, а затем обновите и обновите
pip install -U numpy upgrade numpy на нем
Это сработало :)
pip install --upgrade numpy
в подсказке анаконды:
pip uninstall numpy
тогда:
pip install numpy
у меня сработало!
Привет,
Есть множество пакетов, которые я устанавливаю, для которых требуется NumPy (например, TensorFlow), и я не могу установить и импортировать их из-за ImportError на стороне numpy.
Это происходит как при установке pip, так и при сборке из исходников.
Воспроизведение примера кода:
импортировать numpy как np
импортировать тензорный поток как tf
Сообщение об ошибке:
ImportError: numpy.core._multiarray_umath не удалось импортироватьИнформация о версии Numpy / Python:
'1.16.0.dev0 + cdbf35b'
Я столкнулся с той же проблемой.
Я решил проблему, удалив Theano, tensorflow и keras; затем установил их в таком порядке:
Удалите numpy, а затем обновите и обновите
Я возьму тебя! Если кто-то задает вопросы на английском, вы отвечаете на китайском!
@ datianshi21 наш официальный язык - английский. Google translate говорит, что ваш комментарий: "Numpy удалить и обновить
Просто служу тебе! Другие люди задают вопросы на английском, вы отвечаете на китайском! "
Вы - бот?
pip install --upgrade numpy --user
дал мне ошибку:
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.
Все mxnet-mkl
после удаления
У меня это начало работать, когда я установил панды. Не знаю почему.
https://github.com/numpy/numpy/issues/11871#issuecomment -487995082
Панды устанавливают numpy как зависимость.
Самый полезный комментарий
pip install --upgrade numpy
это удаляет предыдущую версию и устанавливает более новую версию .. это решило проблему для меня