install.packages("installr")
library(installr)
updateR()
Rstudio环境配置
1 更新R
在R原软件中逐个运行下面的代码(仅适用Windows系统)。macOS直接打开CRAN官网下载最新版本的R覆盖安装,重启RStudio即可完成R的更新,原R包都在。
2 更新R包
运行下面的代码或通过右下角的Packages选项卡进行R包的更新
old.packages() # 检查是否有需要更新的R包
update.packages(ask = F) # 更新所有R包
news(package = "limma") # 参看R包的更新内容
BiocManager::valid() # 查看是否有需要更新的bioconductor包。根据提示安装更新
3 从bioconductor安装R包
BiocManager::install("biomaRt",update = TRUE,ask = FALSE)
4 清除当前加载的程序包
如果要从环境中移除所有用户包,则可通过pacman
包的p_loaded()
+p_unload()
函数实现:
5 更改当前R脚本运行目录
6 环境查看和清理
rm(mydata)
rm(list = ls())#移除当前环境中的所有对象
cat("\014")#清空所有输出结果
sessionInfo()#收集有关当前R项目的信息
7 自动安装所需的R包
packages <-c("GEOquery", "limma","ggplot2", "pheatmap")#列出所需的R包
#检查所需的R包是否已安装,若未安装则从CRAN或Bioconductor安装包
packagecheck <- function(x) {
if (!require("BiocManager")) {
install.packages("BiocManager")
} else if (!require(x, character.only = T)) {
CRANpackages <- available.packages()
if (x %in% rownames(CRANpackages)) {
install.packages(x)
} else {
BiocManager::install(x, update = TRUE, ask = FALSE)
}
}
}
lapply(packages, packagecheck)
8 调整矢量/内存分配上限
8.1 提高矢量大小上限
在R语言中如果我们要处理的数据集较大,如在处理单细胞数据时,可能会出现如下报错:
Error: cannot allocate vector of size *** Mb
这是因为 R 中有对象大小的限制(默认值为 500 1024 ^ 2 = 500 Mb)。可以通过如下代码进行调整:
# 调整允许对象大小限制为6GB
options(future.globals.maxSize = 6 * 1024 * 1024^2)
8.2 提高R内存分配上限(macOS)
如果在运行大量的数据处理时,出现如下报错:
Error: vector memory exhausted (limit reached?)
那么说明脚本的运行超出了R语言内存分配的上限,这一般就是Mac的物理内存大小。但是,我们可以通过如下的方式来通过分配SWAP虚拟内存的方式,使得代码能够继续运行(来自stackoverflow上的这篇帖子)。
【方法一:通过usethis包配置】
在R中运行:
usethis::edit_r_environ()
usethis
is a package that facilitates interactive workflows for R project creation and development
运行后会在RStudio中以新标签页的方式打开一个.Renviron文件。在其中输入:
R_MAX_VSIZE=50Gb
注意这里的内存数值包括了物理内存和虚拟内存,所以如果你的电脑的实际内存为16GB,那么在这里需要输入比16GB更大的数值,输入16GB是不会有帮助的。
保存这个文件后,重启RStudio,这时候内存上限就被修改好了。
【方法二:通过终端配置】
打开终端(Terminal),在其中输入:
cd ~
touch .Renviron open .Renviron
这时会打开.Renviron文件,在其中输入:
R_MAX_VSIZE=50Gb
保存文件,重启RStudio。
9 RStudio常用快捷键
操作 | MacOS快捷键 |
---|---|
新建R脚本 |
Command + Shift + N
|
重启R |
Command + Shift + 0 。或点击菜单栏 Session > Restart R 。 |
复制并粘贴代码 | 在一行代码末尾或者选中需要复制的代码后按Command + Shift + D
|
多行注释 | 先选中所要注释的代码,然后按Command + Shift + C 。如果想取消注销,再选中代码,再后按 Command + Shift + C 。 |
创建可折叠注释 |
Command + Shift + R
|
插入管道函数 |
Command + Shift + M
|
赋值 |
Option + -
|
打开帮助 | 将光标放到函数中间,然后按F1 键 |
查找此前运行过的代码 | 在Console面板中,按 Command + 方向上键 ,就可以浏览此前运行过的代码。 |
自动包装函数 | 选中需要包装成函数的代码后,按 Option + Command + X ,会弹出对话框,填写自定义函数的名称后,选中的代码被自动转换成函数,并且其中需要输入的变量会被自动识别并填写到函数名后的括号中(见 Figure 1 )。 |
批量更改自定义函数内的输入变量名 |
有时候我们需要修改自定义函数中的某个输入变量的名称,如果手动修改可能会发生遗漏。这时我们可选中需要修改名称的输入变量,然后按 如果记不住该快捷键,也可以在RStudio的菜单栏中选择 |
批量添加逗号 | 如果有一连串对象需要添加逗号,则可以在按住 Option 的同时用鼠标在这些对象的后方下拉拖拽,这时候可以发现有多个光标被定位到了这些对象之后,然后就可以输入逗号(见 Figure 3 )。 |
在Windows中相应的快捷键把上面的
Command
替换成Control
,Option
替换成Alt
即可。记不住快捷键?可以通过在RStudio的菜单栏中选择
Tools
>Keyboard Shortcuts Help
来显示所有快捷键。
10 自动整理代码
The tidyverse style guide对代码编写时的规范格式进行了详细说明。通过styler包可以实现对代码的自动整理,有助于保持不同项目之间的代码风格一致,并促进协作。安装styler后通过运行下面的命令即可自动整理当前打开的文档的代码。
install.packages("styler")
styler:::style_active_file()
也可以用通过打开Rstudio的插件(Addins),选择”Style active file”来实现对当前R脚本的代码整理。或者选择一段代码后,点击”Style selection”来对选中的代码进行整理。
R for Data Science中详细说明了规范的代码风格。
11 Rstudio主题
rsthemes
包提供了多种额外的主题。
该包通过r-universe进行安装:
install.packages(
"rsthemes",
repos = c(gadenbuie = 'https://gadenbuie.r-universe.dev', getOption("repos"))
)
然后安装主题:
rsthemes::install_rsthemes()
使用:
# 列出所有来自rsthemes的主题
rsthemes::list_rsthemes()
# 依次尝试所有主题
rsthemes::try_rsthemes()
# 只尝试浅色主题
rsthemes::try_rsthemes("light")
通过Tools > Global Options > Appearance也可以浏览和应用这些主题。
安装该包后还会在Rstudio的插件中显示,可以方便的进行深色和浅色模式的切换。要实现这一点,需要打开R的配置文件(~/.Rprofile),可以通过下面的方式快速打开:
usethis::edit_r_profile()
然后将下面的代码粘贴进配置文件:
if (interactive()) {
rsthemes::set_theme_light("Chrome") # 默认的浅色主题
rsthemes::set_theme_dark("Cobalt") # 默认的深色主题
rsthemes::set_theme_favorite( # 再添加一些主题作为备选
c(
"GitHub {rsthemes}",
"Material Palenight {rsthemes}"
)
)
}
现在就可以通过点击插件中的”Toggle Dark Mode”来一键切换深色和浅色主题了(Figure 4 )。同时,点击”Next Favorite Theme”可以切换上面设置的set_theme_favorite()
里面的主题。