Anacondaのcondaとpipのinstallコマンドを使い分ける方法(管理上の方針)

Pythonの基礎
スポンサーリンク

Pythonを利用するには、公式サイトのPythonをインストールしての利用と、Anacondaのパッケージをインストールしての利用があると思います。

公式サイトのPythonを利用している人には関係の無いことなのですが、Anacondaを利用している人には、パッケージのインストール方法にはcondaとpipからの2つの方法があります。

【Python入門】標準ライブラリとサードパーティーパッケージ
Pythonには、高度な処理をできるモジュールが標準パッケージとしてあり、すぐに利用できます。また、サードパーティーの有益なパッケージもPyPiのサイトで探すことができます。ここではパッケージモジュールの使い方、インストール方法を学びます。

このcondaコマンドとpipコマンドを混在させるとエラーが生じることがあります。この問題を回避するための方法をまとめておこうと思います。

スポンサーリンク

Anacondaをインストールしたならcondaコマンドを!

この問題は、簡単に言うとcondaのinstallコマンドとpipのinstallコマンドを混在させて、同じパッケージをインストールしたような場合に、Pythonでimportできなくなるというような問題です。二つパッケージが混在してると衝突してしまうというような状況でしょう。

この混在を回避するために、Anacondaを利用している場合は、「conda installコマンド」を使ってパッケージをインストールするということを原則としましょう。pipコマンドではパッケージをインストールしないということです。

% conda install <パッケージ名>

書籍やネットの記事などを参考にする場合、パッケージのインストール方法をpip installを使って説明しているものがあります。そこでは、必ず「conda install」に読み替えて利用しましょう。

この運用をすることで、パッケージの重複を防ぐことができます。

スポンサーリンク

condaにパッケージが無い時のconda-forge

pipを使わずにcondaのみを使っていれば、パッケージの衝突は起こることはありません。ただし、condaコマンドではインストールできないパッケージもあります。ネット上で管理されているパッケージの参照先(リポジトリ)の一覧が異なるからです。

そこで次は、conda-forgeというコマンドを利用します。anacondaのデフォルトのリポジトリ以外からのcondaのパッケージをインストールすることになります。

次のコマンドでパッケージをインストールします。

% conda install <パッケージ名> -c conda-froge

あるいはこちらのコマンドです。

% conda install <パッケージ名> --channel conda-froge

これで、condaコマンドではインストールできないパッケージを導入することができます。

なお、condaコマンドでconda-forgeを優先させる設定もあります。ここでは触れませんが、conda-forgeのサイトに手順となるコマンドが記載されているので参考にしてください。

スポンサーリンク

conda系のパッケージが無い時にpipを使う

以上のcondaコマンドで多くのパッケージをインストールすることができますが、それでも利用したいパッケージが無い場合があります。その場合になって初めてpip installコマンドを利用しましょう。

% pip install <パッケージ名>

こういう流れを踏むことで、パッケージの衝突を避けることができます。

ただ、これでもついうっかりコマンドを使い間違えてしまうこともあるので、仮想環境を構築してから必要なパッケージをインストールするようにするのもいいでしょう。

【Anaconda】condaコマンドで仮想環境を構築する方法
Anacondaのcondaコマンドで仮想環境を構築する方法を扱います。Python のバージョンによってはライブラリが対応していないことがあり、バージョンを落として作業する必要がある場合に、この仮想環境を構築しての利用が考えられます。

仮想環境を利用すれば、不要になった仮想環境をそのまま捨てるだけでいいので、本体の環境には影響がありません。

スポンサーリンク

まとめ

anacondaの環境では、パッケージのインストールにcondaとpipを混在して使うとエラーになることがあります。

この衝突を回避するために、anaconda環境を利用している場合は、condaコマンドをできるかぎり利用します。書籍などでpipコマンドを使って解説されている部分は、conda
に読み替えて利用します。

condaでインストールできないパッケージは、conda-forgeのチャンネルを利用します。それでもパッケージが無い時にpipコマンドを利用します。

本体の環境を壊さないために、仮想環境を構築して利用することも考えられます。

タイトルとURLをコピーしました