ここでのPbmsの答えは、コピー元の既存の環境があることを前提として、それを行う正しい方法です。Condaは、にリストされているように、Condaパッケージとpipパッケージの両方を完全にインストールできますenvironment.yml
。プロセス全体をより詳細に文書化したかったのです。フォルダベースの環境を使用していることに注意してください。その--prefix [path to environment folder]
ため、ほとんどのコマンドに追加しました。
次のように、既存のプロジェクトの環境をenv
現在のフォルダーと呼ばれるフォルダーにインストールしたとします。
conda create --prefix ./env
environment.yml
そのプロジェクトの環境用に次のように生成します。
conda env export --prefix ./env > environment.yml
environment.yml
そこにコピーしてそこから実行することにより、他のフォルダー内に新しい環境を作成します。
conda env create --prefix ./env --file environment.yml
environment.yml
もう一度environment.yml
そこにコピーし、そこからこれを実行することで、既存の環境を一致させることができます。
conda env update --prefix ./env --file environment.yml --prune
問題の環境がアクティブな状態で、次のようにパッケージの状態を確認します。
conda list
これは、そのコマンドが出力する可能性のあるものの要約版です(pipパッケージにはマークが付いていることに注意してくださいpypi
)。
pip 19.2.2 py37_0
python 3.7.4 h5263a28_0
numpy 1.16.4 py37h19fb1c0_0
pandas 0.25.1 py37ha925a31_0
pyodbc 4.0.27 py37ha925a31_0
ibm-db 3.0.1 pypi_0 pypi
ibm-db-sa 0.3.5 pypi_0 pypi
最後に、これはどのenvironment.yml
ように見えるかを要約したものです(pipパッケージは独自のカテゴリにリストされていることに注意してください)。
dependencies:
- pip=19.2.2=py37_0
- python=3.7.4=h5263a28_0
- numpy=1.16.4=py37h19fb1c0_0
- pandas=0.25.1=py37ha925a31_0
- pyodbc=4.0.27=py37ha925a31_0
- pip:
- ibm-db==3.0.1
- ibm-db-sa==0.3.5
Condaとpipを一緒に使用すると、お互いの依存関係が無意識のうちに吹き飛ばされる可能性があるため、胸焼けを引き起こす可能性があることに注意してください。2つを交互に使用するのではなく、最初にすべてのCondaパッケージをインストールし、次にすべてのpipパッケージをインストールすることになっています。環境が壊れた場合、公式の推奨事項は、環境を(environment.yml
ファイルから)削除して再作成することです。詳細については、次のガイドを参照してください。
https://www.anaconda.com/using-pip-in-a-conda-environment/