web-dev-qa-db-ja.com

パンダのインポートエラーを解決するにはどうすればよいですか?

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)

以前にこれに遭遇して解決策を見つけた人はいますか?

23
Alex F

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

9
vicg

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

この後、問題はなくなりました!

20
João Quintas

私は同じ問題を抱えていましたが、問題はエンコードの問題に起因していました。私のOSは以前フランス語で設定されていたので、すべてが順調でした。しかし、その後、英語に切り替えたときに上記のエラーが発生しました。

入力できます

locale

端末でローカル環境変数を確認します。

フランス語で設定したとき、この設定がありました: French config 。その後、英語に切り替えた後、 English config がありました。

次に、/ Users/myNameの下の.bash_profileに次の行を追加すると、すべてが正常に戻りました。

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

アップグレードできませんでしたpandas with regular

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

問題を完全に解決しました

3

上記のすべての解決策を試しましたが、何もうまくいきません...

エラーメッセージ

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

溶液

私の提案:バージョンの問題に注意してください!

公式のgithubリポジトリからpandasを複製し、それを自分でビルドして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 

がんばろう!

3
WY Hsu

python 2.7.13でこの問題が発生していました。ここに私の解決策があります。

pip install Cython

2. g ++およびgccをインストールします

apt-get install gcc, g++

3.パンダをアンインストールする

pip uninstall pandas

4.パンダを再インストールする

pip install pandas

その後、すべてがOKになります。

2
zawdd

実際、これらの答えはどれも、次の環境ではうまくいきませんでした。

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 に記載されています

受け入れられた答えを除いて、ここで言及されたすべてのソリューションを試しました。これは、a)ウェブ制作環境でanacondaが望ましくないため、b)パッケージが存在しないアーキテクチャのフレームワークまたはcliソリューションを育成するのは良い答えではないためですスタンドアロンで使用...

さらに、@ coloの回答がダウン投票されるのは嫌いです。これは、特定の環境で実際に実行可能なソリューションであるためです。

私と同じような要件と期待を持っているこのスレッドを見つけた人のために、私は数分を節約したいと思っています。

1
other

試してみる

/miniconda3/bin/conda install python

python: 3.6.0-0 --> 3.6.1-2

そして

/miniconda3/bin/conda install pandas

Anacondaバージョンでも同じことを試してください。

0

tox を実行すると、まったく同じ問題が発生しました。

解決する手順:

  1. setup.pyを(pandas==0.23.0の代わりに)0.21.0を含むように更新します。
  2. .toxディレクトリを削除
  3. toxを再度実行します。
0
Martin Thoma

テンソルフローを使用するためにPython 32ビットから64ビットにアップグレードする必要があるときに、この問題が発生しました。

このコマンドを実行すると、pandas 0.21がアンインストールされ、0.22が再インストールされます。

pip install --uppandasのアップグレード

ソート済み。

0
John McCurdy

Condaまたはpipでインストールする代わりに、パッケージマネージャーでインストールしてみてください。

Sudo apt-get install python3-pandas

0
colo