Anaconda (Pythonディストリビューション)
オープンソースパッケージは、conda installコマンドを使用して、Anacondaリポジトリ、Anaconda Cloud(anaconda.org)、または独自のプライベートリポジトリまたはミラーから個別にインストールできる。Anaconda Incは、Anacondaリポジトリ自体のすべてのパッケージをコンパイルおよびビルドし、Windows 32/64ビット、Linux 64ビット、およびMacOS 64ビットのバイナリを提供する。PyPIで利用可能なものはすべて、pipを使用してconda環境にインストールできる。condaは、それ自体とpipがインストールしたものをインストールする。
conda buildコマンドを使用してカスタムパッケージを作成し、Anaconda Cloud、PyPIまたは他のリポジトリにアップロードすることで他のユーザーと共有できる。
Anaconda2のデフォルトのインストールにはPython 2.7が含まれ、Anaconda3にはPython 3.7が含まれている。ただし、condaパッケージ化された任意のバージョンのPythonを含む新しい環境を作成することは可能である。
Anacondaディストリビューションには、250を超えるパッケージが自動的にインストールされ、7,500を超える追加のオープンソースパッケージをPyPI、condaパッケージ、仮想環境マネージャーからインストールできる。
Anacondaディストリビューションには、1,500個以上のパッケージとcondaパッケージおよび仮想環境マネージャーが付属している。また、コマンドラインインターフェイス(CLI)のグラフィカルな代替として、GUIであるAnaconda Navigatorも含まれている。
condaとpipパッケージマネージャーの大きな違いは、パッケージの依存関係の管理方法にある。これは、Pythonデータサイエンスにとって大きな課題であり、condaが存在する理由である。
pipはパッケージをインストールするときに、以前にインストールされたパッケージと競合するかどうかを確認せずに、依存するPythonパッケージを自動的にインストールする。既存のインストールの状態に関係なく、パッケージとその依存関係をインストールする。このため、たとえばGoogle Tensorflowのインストールが正常に機能しているユーザーが、pipを使用して、Tensorflowが使用するものとは異なるバージョンに依存するnumpyライブラリを必要とする別のパッケージをインストールすると、機能しなくなることがある。場合によっては、パッケージは動作しているように見えても、詳細に異なる結果が生成されることがある。
対照的に、condaは現在インストールされているすべてのものを含む現在の環境を分析し、指定されたバージョン制限(たとえば、ユーザーがTensorflowバージョン2.0以降を使用する場合がある)とともに、互換性のある一連の依存関係をインストールする方法を解決、または出来ない場合は警告する。