仅需一招,轻松搞定R包
最近很多人问我的问题都是R包安装的问题。在之前R包只要更新到最新版本,且能够联网,就可以轻松安装。,但现在随着R的功能越来越多,越来越强大。R包也越来越难安装了。并且什么人都可以开发发布R包,很多垃圾包也占用很多戏份。目前R包安装牵扯到配置依赖环境,越来越走向开源软件的通病了,所以,我一般都推荐使用bioconda来安装。但是有涉及到很多版本问题。这次内容,我们介绍一种解决方法。如果能用就用,用不了就别做了。不要问我实验室网速慢怎么解决,难道我还得去帮你办个前兆网络吗。
利用bioconda安装R
R的包一般都是以r-开头的,比如R语言本身为r-base。
利用bioconda安装R与R包
1、配置R源
#查看当前配置哪些源
$ conda config --show channels
#添加R源
$ conda config --add channels r
2、安装R
#查看系统当前R版本$ which R/usr/bin/R#利用conda搜索R$ conda search r-baseLoading channels: done# Name Version Build Channel r-base 3.1.2 0 pkgs/r conda-forge r-base 3.6.3 h7ed4ef7_0 conda-forge r-base 3.6.3 h7ed4ef7_1 conda-forge r-base 4.0.0 hdca8982_2 conda-forge r-base 4.0.0 hdca8982_3 conda-forge #安装R语言$ conda install -c conda-forge -y r-base=4.0.0#再次搜索默认R$ which R~/miniconda3/bin/R
3、安装R包
#搜索deseq2包
$ conda search deseq2
Loading channels: done
No match found for: deseq2. Search: *deseq2*
# Name Version Build Channel
bioconductor-deseq2 1.8.2 r3.2.2_0 bioconda
bioconductor-deseq2 1.10.0 r3.2.2_0 bioconda
bioconductor-deseq2 1.10.0 r3.2.2_1 bioconda
bioconductor-deseq2 1.10.1 r3.2.2_0 bioconda
#安装deseq2包
$ conda install -y bioconductor-deseq2
R包迁移
R包一般都是一个完整文件,只需要将R包整个文件夹迁移走,一般就可以运行。对R包进行迁移时,尽量保证R版本一致。
该方法只是一种方案,绝大部分包是可以的。但是注意不能将windows系统安装的迁移到Linux下。该方法也不是万无一失,比如R包需要系统一些配置,缺少了还是无法运行。
(base) wangtong 10:24:06 ~#使用自己安装的R$ /ifs1/Software/biosoft/R-4.1.1/bin/R
#列出当前R包目录,有两个> .libPaths()[1] '/home/wangtong/R/x86_64-pc-linux-gnu-library/4.1'[2] '/ifs1/Software/biosoft/R-4.1.1/library' #通过new选项增加新的目录 > .libPaths(new='/ifs1/Software/miniconda3/lib/R/library')#新的目录增加进来了,这样一下子就多了很多包可以使用> .libPaths()[1] '/ifs1/Software/miniconda3/lib/R/library'[2] '/ifs1/Software/biosoft/R-4.1.1/library'
new选项会去掉之前默认的,可以通过在函数中增加一个向量增加多个目录。
> .libPaths()
[1] '/home/wangtong/R/x86_64-pc-linux-gnu-library/4.1'
[2] '/ifs1/Software/biosoft/R-4.1.1/library'
> .libPaths(c(.libPaths(),'/ifs1/Software/miniconda3/lib/R/library'))
> .libPaths()
[1] '/home/wangtong/R/x86_64-pc-linux-gnu-library/4.1'
[2] '/ifs1/Software/biosoft/R-4.1.1/library'
[3] '/ifs1/Software/miniconda3/lib/R/library'
注意事项
1、bioconda最好升级到最新版本
conda update -n base -c defaults conda
2、R的名字为r-base
3、R包的名字在bioconda中以r-为前缀
4、一些Bioconductor包的名字为bioconductor-前缀
5、如果bioconda安装终端了,再多试几次
赞 (0)