软件学习-conda

我一般在linux 系统下会用 conda 安装 R 和 python 。

Anaconda 与 Miniconda 介绍

Anaconda是一个免费开源[5]PythonR语言的发行版本,用于计算科学数据科学机器学习大数据处理预测分析),Anaconda致力于简化软件包管理系统和部署。Anaconda的包使用软件包管理系统Conda[6]进行管理。超过1200万人使用Anaconda发行版本,并且Anaconda拥有超过1400个适用于WindowsLinuxMacOS数据科学软件包[7]。 - 维基百科

Anaconda 与 Miniconda 的差别。

Anaconda则是一个打包的集合,里面预装好了conda、某个版本的python、众多packages、科学计算工具等等,就是把很多常用的不常用的库都给你装好了。

Miniconda,顾名思义,它只包含最基本的内容——python与conda,以及相关的必须依赖项,对于空间要求严格的用户,Miniconda是一种选择。就只包含最基本的东西,其他的库得自己装。

个人倾向于使用 Miniconda

Miniconda 安装

网址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/?C=M&O=D

安装代码

1
2
3
cd /mnt/data/zhouziwen/lib
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh

安装过程

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Do you accept the license terms? [yes|no] #是否接受协议,必须选 yes
yes


Anaconda3 will now be installed into this location: #安装位置,必须给一个事先不存在的路径
/mnt/data/zhouziwen/lib/miniconda3

- Press ENTER to confirm the location
- Press CTRL-C to abort the installation
- Or specify a different location below

[/home/zhouziwen/anaconda3] >>> /mnt/data/zhouziwen/bin/Anaconda/Anaconda3

Do you wish the installer to initialize Anaconda3 #选yes
by running conda init? [yes|no]
[no] >>> yes

#之后就没有提示了

注意,需要退出终端后,再次进入才能输入conda命令。

或者不想退出的话,刷新一下环境变量

1
source ~/.bashrc

查看是否安装R和python

安装好之后,发现自带了python,但是没有R

1
2
3
4
5
6
$ which python
/mnt/data/zhouziwen/bin/Anaconda/Anaconda3/bin/python
$ which R
/usr/bin/R
$ whereis R
R: /usr/bin/R /usr/bin/R.distrib /usr/lib64/R /usr/include/R /usr/share/R /usr/share/man/man1/R.1.gz

到Anaconda 的 bin 文件夹下看看,确实没有R,再安装R

安装 R 4.1

https://www.jianshu.com/p/9a77174549cc

安装好 Miniconda 之后,首先添加 channel : 清华镜像 free conda-forge bioconda (Miniconda 默认情况下,R 版本最高为 3.6,有点低)

1
2
3
4
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda
conda config --set show_channel_urls yes

查看当前的镜像

1
conda config --show

此时再查找一下可以用的 R (conda search r) ,发现就有了 4.0 和 4.1

安装 4.1.0 版本

1
conda install r-base=4.1.0

卸载R

我发现使用 conda remove r 只能卸载R包,不能卸载R。

只能是粗暴地手动删除了。先找到R所在路径

1
2
$ which R
/mnt/data/zhouziwen/bin/Anaconda/Anaconda3/bin/R

这里的 R 文件是一个软链接,链接到 ../lib/bin/R。删除

额,找到了 ../lib/R 文件夹,没有找到 ../lib/bin 文件夹。删除

ok,删除成功

1
2
$ which R
/usr/bin/R

版本回退

我发现 conda 也有类似于 git 一样的版本控制功能,首先使用下面的语句查看所有版本。

1
conda list --revision

确定需要回退的版本后,使用下面的语句回退到历史版本。

1
conda install --rev 1

如果遇到报错,比如下面的语句

1
RemoveError: 'requests' is a dependency of conda and cannot be removed from conda's operating environment

那么先退出 conda 环境(base) ,然后更新 conda ,如下

1
2
conda deactivate
conda update conda

还是不行,就只能删除 conda 文件夹,重新按照 conda 了。

创建虚拟环境

创建虚拟环境,后面可以指定自带的python版本 (这里我保持与主环境一致)。

1
conda create --name R4.1.0 python=3.9.5

创建后的虚拟环境在 envs 文件夹下。

进入虚拟环境

1
conda activate R4.1.0

安装 R

1
2
conda search r
conda install r-base=4.1.0

进入 R

1
2
/mnt/data/zhouziwen/lib/miniconda3/envs/R4.1.0/bin/R
packageVersion("showtext")

安装 R 包举例(这样安装的R包版本可能对应不上,如果无法使用则卸载后重新安装一个版本更低的)

1
2
conda search r-showtext
conda install r-showtext

退出虚拟环境

1
conda deactivate

卸载 R 包, 与 conda remove 是同一个命令。

1
conda uninstall r-showtext

查看所有环境

1
conda env list

卸载环境

1
conda remove --name sth --all 
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2019-2024 Vincere Zhou
  • 访问人数: | 浏览次数:

请我喝杯茶吧~

支付宝
微信