本期介绍一下R语言
基础部分,R
包的安装。🧐
大家肯定都觉得很简单,但往往简单的东西会有不一样的解决方案。
来See~ See~ 吧!😘
我们最常使用的就是install.packages()
函数,来安装CRAN
上的R
包。
我们可以选择将单个包作为变量传输进入,也可以通过向量的形式进行多个R
包的安装。
install.packages("tidyverse")
install.packages("ggstatsplot")
install.packages("ggVennDiagram")
install.packages(c("tidyverse", "ggstatsplot", "ggVennDiagram"))
我们一些常用的生信R
包并没有存在CRAN
上,而是存在bioconductor
上。☹️
我们一般需要使用BiocManager::install
函数来进行安装。👇
这里我们需要先安装并加载BiocManager
,然后进行其他R
包的安装。
这里我们用下if (!require())
来避免二次安装。
Note! 这里说明一下,还是推荐大家使用if
语句来进行R
包的安装与加载,在实际应用中要比library
好用很多。 👍
if (!require("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install("DESeq2")
library(DESeq2)
大家有时候会遇到安装失败的时候,可以直接去bioconductor
的官网查询你要安装的R
包,它会提示你最新的安装方法,如下图:
上述的安装方法均是安装的正式版R
包,是经过审核的,比较稳定。
而通常一些作者会将尚未通过CRAN
或者bioconductor
审核的R
包,存在github
、gitlab
等开源网站上,这个时候就需要使用devtools
或者remote
包。🥳
# install.packages("devtools")
devtools::install_github("Hy4m/linkET", force = TRUE)
packageVersion("linkET")
如果你需要安装特定版本的R
包,可以这样做。👇
Note!
版本越新不一定越好,大家还是尽量遵循非必要不升级的原则吧。
install_version("ggplot2", version = "0.9.1", repos = "http://cran.us.r-project.org")
随着大家用R
的时间越来越久,R
包也装的越来越多,这个时候分辨安装过这个R
包就显得尤为重要了,通常我们可以使用install.packages
函数判断,但过于繁琐。😖
这里介绍2个R
包,优雅地进行R
包安装吧。
方法一:pacman
包进行批量安装,自动判断是否安装过,随后进行安装与加载。
library(pacman)
pacman::p_load(tidyverse, ggstatsplot, ggVennDiagram)
补充!: ✅
p_load
# Install & load packages ✅p_unload
# unload packages ✅p_install
# Install Packages from CRAN ✅p_update
# update packages ✅p_load_gh
# Load and Install GitHub Packages ✅p_install_gh
# Install Packages from GitHub ✅p_install_version
# Install Minimum Version of Packages
方法二:大家可能还是觉得要区别R
包是存在CRAN
、bioconductor
还是github
上,觉得很麻烦。😏
OK~ 介绍下一个:librarian
包。
librarian
包无需进行区分R
包是来自CRAN
、bioconductor
还是github
, 直接使用shelf
函数即可,非常简单。nice !~ 🤩
library(librarian)
librarian::shelf(ggstatsplot, Hy4m/linkET, limma)
补充!: ✅
shelf
# Install & load packages ✅unshelf
# unload packages ✅lib_paths
# Viewing and editing library locations ✅reshelf
# detaches and then reattaches packages
有时候我们希望下载R
包后进行本地安装,可以这样做:
install.packages("local/packages.tar.gz", repos = NULL, type = "source")
最后祝大家早日不卷!~