在線安裝
1)CRAN的包
R的官方包倉庫(Comprehensive R Archive Network, CRAN)提供了大量的開源R包,使用install.packages()函數(shù)可以直接從CRAN安裝包哭当。
install.packages("ggplot2") # 安裝單個(gè)包
install.packages(c("ggplot2", "dplyr")) # 安裝多個(gè)包
參數(shù)說明
- lib 指定安裝包的路徑中符。如果不指定,默認(rèn)安裝到.libPaths()的第一個(gè)路徑烙肺。
- repos 指定下載包的倉庫的 URL纳猪。如果不設(shè)置,R 會(huì)自動(dòng)使用默認(rèn)的 CRAN 鏡像桃笙。也可以自定義鏡像源氏堤。
- dependencies 控制是否安裝依賴包。如果設(shè)置為 TRUE,會(huì)安裝所有依賴包鼠锈。如果為 NA闪檬,則會(huì)安裝包所需的默認(rèn)依賴包,值可以是TRUE购笆、FALSE或NA粗悯。
- type 用于指定安裝包的類型⊥罚可以是 "source"(從源代碼安裝)或 "binary"(安裝二進(jìn)制文件)样傍。
2)Bioconductor的包
Bioconductor是一個(gè)專門為生物信息學(xué)和基因組學(xué)開發(fā)的R包倉庫,使用Bioconductor安裝包需要先安裝并加載BiocManager铺遂。
install.packages("BiocManager")
library(BiocManager)
BiocManager::install(c("GenomicFeatures", "AnnotationDbi"))
參數(shù)說明
- version 指定要使用的 Bioconductor 版本衫哥。通常默認(rèn)是安裝當(dāng)前 R 版本對(duì)應(yīng)的最新 Bioconductor 版本,但你可以手動(dòng)指定安裝特定版本襟锐。
- ask 控制在安裝包之前是否詢問用戶確認(rèn)撤逢。如果設(shè)置為 TRUE,在更新或安裝包之前會(huì)提示用戶確認(rèn)粮坞。默認(rèn)行為根據(jù)交互式會(huì)話自動(dòng)決定(交互式會(huì)話時(shí)為 TRUE蚊荣,非交互式會(huì)話時(shí)為 FALSE)。
- update 如果為 TRUE莫杈,則在安裝指定包的同時(shí)檢查并更新所有已安裝的 Bioconductor 包妇押。如果為 "all",則更新所有包姓迅,不僅限于 Bioconductor 包敲霍;如果為 FALSE,則不會(huì)更新任何包丁存。
- force 如果設(shè)置為 TRUE肩杈,則強(qiáng)制重新安裝指定的包,即使這些包已經(jīng)是最新版本解寝。默認(rèn)是 FALSE扩然,即只有在包不是最新版本時(shí)才進(jìn)行安裝或更新。
- dependencies 控制是否安裝包的依賴項(xiàng)聋伦。如果設(shè)置為 TRUE夫偶,則安裝該包的所有依賴項(xiàng)(包括可選依賴);如果為 NA觉增,則只安裝默認(rèn)的依賴項(xiàng)兵拢;如果為 FALSE,則不安裝任何依賴項(xiàng)逾礁。
- repos 指定安裝 CRAN 包的鏡像地址说铃。該參數(shù)不會(huì)影響 Bioconductor 包的安裝,因?yàn)?Bioconductor 包會(huì)自動(dòng)從 Bioconductor 的鏡像中下載。如果安裝 CRAN 包時(shí)想使用特定的 CRAN 鏡像腻扇,可以設(shè)置該參數(shù)债热。
3)github的包
如果某個(gè)R包還沒有發(fā)布到CRAN或者Bioconductor上,開發(fā)者通常會(huì)將代碼托管在GitHub上幼苛,要從GitHub安裝包窒篱,你需要首先安裝devtools包(或remotes包),然后使用install_github()函數(shù)舶沿。
install.packages("devtools")
library(devtools)
devtools::install_github("tidyverse/ggplot2")
本地安裝
如果你已經(jīng)下載了R包的源代碼或二進(jìn)制文件(通常為.tar.gz或.zip格式)墙杯,你可以通過install.packages()函數(shù)指定文件路徑來安裝。
## R環(huán)境中安裝
install.packages("/path/to/package.tar.gz", repos = NULL, type = "source")
install.packages("/path/to/package.zip", repos = NULL)
devtools::install_local("/path/to/package.tar.gz")
remotes::install_local("/path/to/package.tar.gz")
## 命令行安裝
R CMD INSTALL package.tar.gz
R CMD INSTALL /path/to/package.zip
R CMD INSTALL --configure-args="--with-optional-feature" package.tar.gz
R CMD INSTALL package1.tar.gz package2.tar.gz