vlambda博客
学习文章列表

关于R语言环境安装,我录制了一个视频教程

R语言可能是目前大部分生信初学者所接触的第一门编程语言。而学习一门编程语言的首要任务肯定是安装相关环境,R语言也不例外。

大部分人在安装的时候都不需要遇到问题,但是总有一小部分例外。根据我的统计,每30人里面必然会有一个人的电脑会因为中文用户名导致Rstudio无法画图,每100个人中会有一个人把R和Rstudio安装在中文路径下(例如D:/R编程学习/RStudio)导致RStudio打开之后是白屏,当然还有其他一些奇奇怪怪的问题(比如说XP系统)。毕竟林子大了,什么鸟都有。

于是,我在2019年年初重新录制了R语言软件安装相关的视频,用我新买的笔记本电脑,在全新的环境中演示如何进行安装R,Rstudio以及R包。那个时候我用的R版本还是3.5.2,而现在都已经到R4.0了,RStudio的网站都改版了很多。本来是想计划重新制作的,但发现我的时间实在是不够用,只能作罢,只做了一些基本的剪辑工作就重新上传到了B站了。

或者这样子检索

视频分为两个部分,分别是R环境准备和R包安装。

在R环境准备中,我介绍了如何安装R语言,安装RStudio,以及安装JRE(Java运行环境,针对某些R包)和Rtools(用于编译R包)。当然更重要的是,我演示了几种常见的报错的结局方案

  • 08:22 R语言中文路径
  • 10:04 RStudio中文路径
  • 11:05 中文用户名

在R包安装中,我介绍了如何配置镜像,如何安装和卸载R包。

对于镜像,我视频推荐的都是清华镜像,但有些时候清华镜像也可能出现问题,需要按照实际情况进行调整。关于R包安装,我用的是如下代码


if(!require("xlsx")) install.packages("xlsx")if(!require("tidyr")) install.packages("tidyr")if(!require("dplyr")) install.packages("dplyr")if(!require("ggplot2")) install.packages("ggplot2")if(!require("data.table")) install.packages("data.table")if(!require("ggrepel")) install.packages("ggrepel")if(!require("devtools")) install.packages("devtools")if(!require("BiocManager")) install.packages("BiocManager")if(!require("DESeq2")) BiocManager::install("DESeq2")if(!require("clusterProfiler")) BiocManager::install("clusterProfiler")

不过目前看来使用require判断R包是否安装的方法并不好,更好的方式是用requiereNamespace检查命名空间。原因在于前者会进行加载跳出很多信息,而后者不会

> requireNamespace("DESeq2")Loading required namespace: DESeq2> require(DESeq2)Loading required package: DESeq2Loading required package: S4VectorsLoading required package: stats4Loading required package: BiocGenericsLoading required package: parallel...以下省略其他信息

因此建议用下面的方法来实现R包检查和安装。

if (!requireNamespace("BiocManager", quietly = TRUE)) install.packages("BiocManager")

和R环境安装一样,我也演示了几种常见的R包安装会遇到的报错

  • 27:05 手误打错R包的名字
  • 28:31 安装R包A时没有正确处理依赖关系,导致无法正确加载

最后还有一些建议

  • 使用bioconda安装R时,请新建环境,避免冲突
  • R版本和R包版本不需要追求最新
  • 优先选择Windows上的R,因为很多包都有已编译的版本(不过有些R包只有Linux上能用)

当然视频时长不能太长,我们更多时候是需要看看别人的经验,我在简书上就整理了一个专栏专门记录R语言报错,阅读原文直达。