質問: CenOS7上のpython2に、pandas をインストールしようとすると、下記のエラーになりました。 ``` $ pip -V pip 10.0.1 from /usr/lib/python2.7/site-packages/pip (python 2.7) $ sudo pip install pandas (略) Installing collected packages: numpy, python-dateutil, pandas Found existing installation: numpy 1.7.1 Cannot uninstall 'numpy'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall. ``` numpy を探すと1.7.1ではなくて1.14.3と表示されました。 ``` $ pip freeze |grep numpy Could not parse requirement: -ipap11helper numpy==1.14.3 ``` 他のマシンでは一度pipをアンインストールして、再インストールすると解決しました。 今回もその方法で回避することも考えましたが、せっかくの機会なので、 理解してみたいと思い質問しました。 pipをインストールする際、 pip3->pipの順でインストールしました。 この順序が逆だと、pipはどちらもpython3が動いてしましました。 そのためこのマシンでは、pip3->pipの順としました。
回答: 文字通り解釈すると、numpyが入るときにpip経由ではなくdistutils経由(setup.pyとか)で入れちゃったので、pipで管理できないよ・・・ということらしいです。 numpyのディレクトリの中にある(であろう)setup.pyを探して、下記リンクの手順で消すべきファイルのリストを作って手動で消すとか setup.pyを用いてインストールしたモジュールのアンインストール方法 - Qiita 無理矢理`pip install numpy --ignore-installed`で新しいnumpyを入れちゃうという手があると思います。