工具:安装R语言的R包的各种方法

欢迎大家关注全网生信学习者系列:

  • WX公zhong号:生信学习者
  • Xiao hong书:生信学习者
  • 知hu:生信学习者
  • CDSN:生信学习者2

介绍

R语言提供的大量R包为众多研究者提供了足够的工具,但是如何安装R包是很多人在使用R语言做数据分析时候所面临的问题之一。接下来介绍如何大规模安装所需要的R包。

常用安装

  1. install.packages函数是我们常用的安装R包的方式,需要注意的是这些R包必须是在CRAN仓库中,否则安装将会失败。安装方式可以将单个包作为变量传输进入,也可以以向量模式传递多个包。
# Installation of required packages in single model
install.packages("tidyverse")
install.packages("ggplot2")
install.packages("dplyr")
install.packages("tidyr")

# mulitple packages in one command line
install.packages(c("tidyverse", "ggplot2", "dplyr", "tidyr"))

# load packages
library("tidyverse")
library("ggplot2")
library("dplyr")
library("tidyr")
  1. 这里不得不提的是另一个存放R包的网址bioconductor。该项目是存放了大量用于生物研究的R包,很多做生物信息分析的人都会使用里面提供的R包。它的安装包是通过BiocManager包提供的install函数实现的。

The mission of the Bioconductor project is to develop, support, and disseminate free open source software that facilitates rigorous and reproducible analysis of data from current and emerging biological assays.

# Installation of required packages in single model
BiocManager::install("DESeq2")
BiocManager::install("gsva")

# mulitple packages in one command line
BiocManager::install(c("DESeq2", "gsva"))

# load packages
library("DESeq2")
library("gsva")
  1. 还有一类是开发者把未经过CRAN或bioconductor等审核过但存放在如github, gitlab等开源网站的R包,这类R包可以分别通过devtoolsremote包的 install_githubinstall_gitlab等函数安装。
devtools::install_github("HuaZou/MyRtools")
remotes::install_github("HuaZou/MyRtools")

devtools::install_version("Rcpp", version = "1.0.4.6",repos = "[http://cran.us.r-project.org](http://cran.us.r-project.org)")
  1. 除了联网安装R包外,R还提供本地下载压缩包安装模式。
install.packages("local/packagename.tar.gz", repos=NULL, type="source")

高效方式一

随着时间流逝,安装的R包也越来越多,如何快捷分辨出未安装过的R包就显得尤其重要。我们可以通过 installed.packages函数判断,并使用lapply函数分次安装所有的R包。构建函数,使其具有如下功能:

  1. 判断未安装R包;
  2. 使用 install.packagesBiocManager::install函数安装来源你不同的R包;
  3. 用lapply分别加载R包,并不输出加载过程中产生的信息。
packages_CRAN <- c("tidyverse", "ggplot2", "dplyr", "tidyr")
packages_biocond <- c("DESeq2", "gsva")

InstallPackageFun <- function(packages=packages_CRAN , type="CRAN"){
    #packages=packages_CRAN
    #type="CRAN"

    # Install packages not yet installed
    installed_packages <- packages %in% rownames(installed.packages())
    if (any(installed_packages == FALSE)) {
        if(type == "CRAN"){
         lapply(packages[!installed_packages], install.packages)        
        }else{
         lapply(packages[!installed_packages], BiocManager::install) 
        }
  }
  # Packages Loading 
  invisible(lapply(packages, library, character.only = TRUE)) 
}
InstallPackageFun(packages=packages_CRAN , type="CRAN")
InstallPackageFun(packages=packages_biocond , type="bioconductor")

高效方式二

除了上面这种大规模安装未安装过的R包外,还可以通过已经构建好的R包内置函数安装,例如现在比较友好的R pacman,它提供的p_load函数其实可以看成是上述InstallPackageFun的升级版本。还有一个librarian包提供的shelf函数和p_load有类似的功能。

  • pacman
install.packages("pacman")

pacman::p_load(ggplot2, tidyr, dplyr)
  • librarian
install.packages("librarian")

librarian::shelf(ggplot2, DESeq2)

相关推荐

  1. 工具安装R语言R各种方法

    2024-06-13 18:50:04       8 阅读
  2. R语言【taxa】——taxa

    2024-06-13 18:50:04       36 阅读
  3. R语言dplyr函数总结

    2024-06-13 18:50:04       7 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-13 18:50:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-13 18:50:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-13 18:50:04       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-13 18:50:04       20 阅读

热门阅读

  1. 深度学习的点云检测

    2024-06-13 18:50:04       10 阅读
  2. 基于深度学习的深度图预测

    2024-06-13 18:50:04       5 阅读
  3. LeetCode 1729, 12, 19

    2024-06-13 18:50:04       7 阅读
  4. PostgreSQL系统表、视图归纳总结及相关运维SQL

    2024-06-13 18:50:04       7 阅读
  5. mysql索引在什么情况下不会被使用

    2024-06-13 18:50:04       7 阅读
  6. Flutter金融理财类APP常用的第三方库总汇

    2024-06-13 18:50:04       8 阅读
  7. 第五章 Three.js 材质与纹理

    2024-06-13 18:50:04       7 阅读
  8. 027、工具_redis-benchmark

    2024-06-13 18:50:04       6 阅读
  9. c++ 智能指针使用注意事项及解决方案

    2024-06-13 18:50:04       6 阅读