之前一直在linux下用perl和python居多,对R的使用还停留在windows的Rstudio以及各种linux QIIME2等虚拟环境里的R。恰巧上两个星期遇到了linux R包安装的问题,还是记录一下吧。
1 R的安装
方法很多,conda安装,官网下载后上传到linux服务器然后编译等等。
2 R包的安装
①R交互模式下使用install.packages安装
install.packages("packages",repos="https://mirrors.tuna.tsinghua.edu.cn/CRAN/") ##指定镜像地址
remove.packages("packages") #卸载R包
######安装指定版本的R包可考虑使用devtools工具
install.packages("devtools") #使用devtools来安装R包更容易搜索到资源
devtools::install_version("packages", version = "1.3.2", repos = "http://cran.us.r-project.org") #安装1.3.2版本
packageVersion("packages") #安装成功后检查Matrix版本
②如果cran中不存在包,用BiocManager安装
install.packages("BiocManager") #如已安装,后续安装不再需要
BiocManager::install("clusterProfiler")
需要注意的是,我们安装R包均未指定R包路径,如需查看默认位置,则
.libPaths()
如需查看所有安装的包版本信息,路径等,则
installed.packages()[,c('Package','Version','LibPath')]
③手动安装
如果因为R的版本过老,或者某些其他原因,导致以上两种自动安装的方法失败,可以使用手动安装。例如,从R官网CRAN链接下载R包,需要注意的是,下载的R包版本要和R版本对应。如果实在不知道R包的哪个版本与自己使用的R对应,那么根据R包发布时间和R推出的时间估算一下,而后尝试安装。
将手动下载的R包上传到library中,使用
sudo R CMD INSTALL mypackage.tar.gz ###需要root权限
有时候会出这种问题,例如
很简单,这就是因为依赖的包没有安装导致的,重复以上步骤就可以。
④通过conda安装
像perl包和python包一样,bioconda里面也有很多上传的R包,可以先search一下,一般CRAN的包是以 r-开头,而另一种是以bioconductor-开头,例如
conda search r-stringi
conda search bioconductor-biocgeneric
通过conda安装R包,还是先构建一个R环境吧,conda create -n R r-base,不然环境变量有时候够头痛的。
3 服务上使用Rstudio-server
有时候服务器上光用R还不够,还要用到Rstudio,首先下载安装Rstudio-server
sudo vim /etc/rstudio/rserver.conf ####切换不同版本的R
rsession-which-r=~/biotools/anaconda2/bin/R
rsession-which-r=/usr/bin/R