Подтвердить что ты не робот

Как решить импортную ошибку для pandas?

Я установил Anaconda с python 2.7.7.
Однако, когда я запускаю "import pandas", я получаю сообщение об ошибке:
"ImportError: C extension: y not built. If you want to import pandas from the source directory, you may need to run 'python setup.py build_ext --inplace' to build the C extensions first."
Я попытался выполнить предложенную команду, но он заявил, что

skipping 'pandas\index.c' Cython extension (up-to-date)      
skipping 'pandas\src\period.c' Cython extension (up-to-date) 
skipping 'pandas\algos.c' Cython extension (up-to-date)      
skipping 'pandas\lib.c' Cython extension (up-to-date)        
skipping 'pandas\tslib.c' Cython extension (up-to-date)      
skipping 'pandas\parser.c' Cython extension (up-to-date)     
skipping 'pandas\hashtable.c' Cython extension (up-to-date)  
skipping 'pandas\src\sparse.c' Cython extension (up-to-date) 
skipping 'pandas\src\testing.c' Cython extension (up-to-date)
skipping 'pandas\msgpack.cpp' Cython extension (up-to-date)

Кто-нибудь сталкивался с этим раньше и нашел решение?

4b9b3361

Ответ 1

У Pandas есть части кода, написанные на C, чтобы заставить его работать быстрее. Если вы попытались вручную установить pandas, вам нужно будет его построить. Попробуйте переустановить его с помощью менеджера пакетов miniconda здесь: http://conda.pydata.org/miniconda.html

и тогда вы можете просто сделать

conda install pandas

Есть очень простые инструкции о том, как это сделать в приведенной ниже ссылке. Просто сделайте ctrl-f miniconda, чтобы найти раздел, который говорит об этом

http://pandas.pydata.org/pandas-docs/dev/install.html

Ответ 2

У меня была та же проблема с Python 3.4.3.

Я использовал pandas -0.18.0.

Модернизация (с помощью pip) решила проблему для меня:

[sudo] pip install --upgrade pandas

Конечный результат обновления:

Successfully installed numpy-1.13.3 pandas-0.21.0 python-dateutil-2.6.1 pytz-2017.3 six-1.11.0

После этого проблема исчезла!

Ответ 3

У меня была такая же проблема, и проблема возникла из-за проблемы с кодировкой. Мой os был ранее настроен на французском языке, и все было в порядке. Но затем, когда я переключился на английский, у меня была ошибка выше.

Вы можете ввести

locale

в терминале для проверки локальных переменных среды.

При настройке по-французски у меня была такая конфигурация: французский вариант. Затем, после того, как я перешел на английский, у меня было: Английский вариант конфигурации.

Затем я добавил следующие строки в .bash_profile в разделе /​​Users/myName, и все вернулось к нормальному.

export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

Ответ 4

Я перепробовал все решения выше, но ничего не получается...

Сообщение об ошибке

Я получил сообщение об ошибке с ipython

ImportError: C extension: iNaT not built. If you want to import pandas 
from the source directory, 
you may need to run 'python setup.py build_ext --inplace --force' 
to build the C extensions first.

и это предполагает

$ python setup.py build_ext --inplace --force

Решение

Мое предложение: будьте осторожны с проблемой версии!

Я клонирую pandas из официального репозитория github, затем собираю его сам и устанавливаю с помощью pip

Ниже приведена команда, которую я набрал в терминале

$ cd pandas

$ python setup.py build_ext --inplace --force

$ sudo pip install .  # don't forget the dot 

или, если вы хотите установить в свою личную учетную запись Linux вместо системы (из-за проблемы с несколькими пользователями)

Вы можете добавить флаг --user

$ pip --user install . # don't forget the dot, too

Теперь все отлично работает на моем ноутбуке

Моя конфигурация

Ubuntu 16.04
Python 2.7
Numpy 1.13.1 

Удачи!

Ответ 5

Я не смог обновить панды с помощью регулярных

pip install --upgrade pandas 

"tensorflow 1.6.0 has requirement numpy>=1.13.3, but you'll have numpy 1.13.1 which is incompatible."

Однако, столкнувшись с этим:

pip install --upgrade pandas --force

полностью решить проблему

Ответ 6

У меня была эта проблема с python 2.7.13 вот мое решение: 1. установите Cython с помощью

pip install Cython

2. установите g++ и gcc

apt-get install gcc, g++

3. удалить pandas

pip uninstall pandas

4. переустановить pandas

pip install pandas

тогда все будет в порядке.

Ответ 7

На самом деле, ни один из этих ответов не работал для меня в следующей среде:

docker-compose # multiple containers, the managing one based on debian
Python 2.7
Django 1.8.19
numpy==1.11.3 # pinned to version, because of https://github.com/rbgirshick/py-faster-rcnn/issues/481

... more requirements

Следующее решение работало после прочтения

https://github.com/pandas-dev/pandas/issues/18281

а также

https://github.com/pandas-dev/pandas/issues/16715

которые оба рассматривали промежуточные решения, а затем рекомендовали модернизацию,

поэтому я интегрирован в файл Dockerfile

pip install -r requirements.txt \
&& pip install \
pandas==0.21.0 \
--force-reinstall \
--upgrade \
--no-deps \
--no-cache \
--find-links https://3f23b170c54c2533c070-1c8a9b3114517dc5fe17b7c3f8c63a43.ssl.cf2.rackcdn.com/ \
--no-index

который указан в https://github.com/pandas-dev/pandas/issues/16715#issuecomment-310063504

Я пробовал все решения, упомянутые здесь, за исключением принятого ответа, также потому, что: а) я не хочу anaconda в среде веб-производства и b) это не очень хороший ответ для создания рамок или cli-решений для архитектур, где пакет не подержанный автономный...

Кроме того, мне не нравится @colo ответить на downvoted, потому что это действительно приемлемое решение в определенной среде.

Для тех, кто найдет эту тему с похожими требованиями и ожиданиями, такими как я, я надеюсь, что сэкономил несколько минут.

Ответ 8

попробуйте

/miniconda3/bin/conda install python

python: 3.6.0-0 --> 3.6.1-2

и

/miniconda3/bin/conda install pandas

Попробуйте то же самое с версией Anaconda.

Ответ 9

Вместо того, чтобы устанавливать его с помощью conda или pip, попробуйте установить его с помощью менеджера пакетов:

sudo apt-get install python3- pandas

Ответ 10

У меня была эта проблема, когда мне нужно было обновить с Python 32-битное до 64 бит, чтобы использовать shadoworflow.

Запустив эту команду, удалил pandas 0.21 и переустановил 0.22:

pip install --upgrade pandas

Сортировано.

Ответ 11

У меня просто была такая же проблема при запуске tox.

Шаги для решения:

  1. Обновите setup.py чтобы содержать pandas==0.23.0 (вместо 0.21.0).
  2. Удалить каталог .tox
  3. Запустите tox снова.