如何使用Conda

在日常数据的分析过程中,我们往往会使用许许多多的软件;这些软件需要不同的依赖举个例子A软件需要python2的环境而B软件需要python3的环境,因此当你使用python去运行软件的时候往往敲下的命令像这样python A.py;这时候就需要仔细检查一下python是否是正确的版本python2|python3

不仅仅是python版本的问题,甚至有些软件在python包上也会有冲突,这样就很难办了;例如A软件需要的是numpy 1.0.4而B软件需要的是numpy 1.2.4;这时候运行不同的软件你就需要去指定加载不同版本的numpy包了。

conda的出现减少我们在软件安装上带来的困惑,让更多的精力投入到数据分析中。

预备知识

环境变量: 操作系统运行时的一些参数和系统配置;为了方便统称内存

简单的来说就是当系统启动的时候,一些东西就被加入到操作系统中,在这个环境下;你可以从内存中取出这个变量的值;但是我们系统的内存是有限的,不可能把所有的文件信息、位置存到内存中;我们仅仅只把一些系统关键信息、常用到的一些东西存进内存。

做个简单的示范

假设我在当前环境设置一个变量a=10;再开启一个子进程是就访问不了这个变量a了;

但是把它加入到内存后,在子进程中同样可以访问到这个变量

###没加入环境变量
(base) [zpliu@mn02 cdHit]$ a=10
(base) [zpliu@mn02 cdHit]$ bash   ##开启子进程
(base) [zpliu@mn02 cdHit]$ echo $a
#值为空

###加入环境变量中
(base) [zpliu@mn02 cdHit]$ export a=10  ##加入环境变量
(base) [zpliu@mn02 cdHit]$ bash    ##进入子进程
(base) [zpliu@mn02 cdHit]$ echo $a
10

安装MiniConda

下载安装包后,正常情况一路点确定就行,并且会下载一些包用于MiniConda的初始化;

安装完成后脚本会自动在~/.bashrc文件中添加一些配置信息

接下来只需要重新加载一下配置文件就可以使用conda

添加清华镜像源

Conda的正确使用姿势

每个软件的依赖项不一样,因此在使用的时候,尽量给每个软件创建一个单独的环境;保证软件能够正常的运行。

下面以安装计算遗传复杂度软件xlcpr为例,xlcpr是基于python3的,因此安装是就需要制定python的版本

1.创建xlcpr环境

环境名可以和软件名字一样方便回忆,我这里就取xcplr了

2.安装依赖

一般软件对应的文档会有命令的

  • -n指定对应的环境

安装完成后在当前环境变量就会有xcplr这个可执行脚本了

3.退出环境

4.删除环境

如果有的软件不用了,也可以直接把对应的整个环境给删除掉

5.列出环境中已经安装的包

conda进阶

接下来这部分主要讲conda的大致实现原理,

最主要的信息就是

每次下载依赖的时候,conda会去检测package cache中是否含有对应版本的包,conda会拷贝一份到对应环境,没有就会下载一份。

再说说envs directories这个变量吧。

【持续更新】错误集锦

  • 安装包错误

    failed with initial frozen solve Retrying with flexible solve.

    解决办法

Last updated

Was this helpful?