我正在使用conda,pip和yml配置文件创建一个python环境:
conda env create -f test.yml -n test_pip
然后
conda env update -f test.yml -n test_pip
使用以下 .yml 文件(仅用于测试(:
channels:
- defaults
- conda-forge
dependencies:
- python=3.5
- numpy
- scipy
- scikit-learn
- jupyter
- ipykernel
- requests
- pandas
- seaborn
- click
- openpyxl
- matplotlib
- pip:
- watermark
- "-e git+https://github.com/slundberg/shap#egg=shap"
- pytest
- sklearn
- autopep8
它工作正常,但 egg 文件安装在当前的目录"src/shap/"中,而我想让它与 conda 或 pip 安装的所有其他 python 包一起安装:
/xxx/anaconda/envs/test_pip
我采用了这个测试 github 目录(我知道我可以直接使用 pip install 安装它(,但我想稍后使用我自己的 git 目录。
为什么鸡蛋没有安装在这里?
/xxx/anaconda/envs/test_pip/lib/python3.5/site-packages/
这是我对 pip 和 conda 安装的其他软件包进行鳍鱼的地方。
有什么原因吗?我该如何改变它?
我正在使用:
anaconda 4.2.0
conda 4.5.1
pip 9.0.3
我在您的配置中没有看到任何鸡蛋文件。如果通过"鸡蛋文件"你 来自 GitHub 的 Git 存储库的意思是罪魁祸首是选项-e
— 它 在"可编辑模式"下安装包。你可能不需要它,所以 配置的部分应如下所示:
- pip:
…
- "git+https://github.com/slundberg/shap#egg=shap"
…
附言。#egg=shap
并不意味着有鸡蛋文件,这只是 在 VCS(在本例中为 git(URL 中命名pip
包,以便pip
可以在克隆存储库之前解析包名称和版本。