最近很多人问我的问题都是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-base Loading 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安装终端了,再多试几次
|