R 包管理


2024-09-04

函数总结

函数功能
install.packages()安装包。不加参数,显示CRAN镜像站点站点,加包名称,直接下载安装包
installed.packages()列出安装的包
update.packages()更新已安装的包
library("lib name")载入包
library()不带参数,查看已安装的 R 包
search()编译环境下已载入的包
help(package="package_name")输出某个包的简短描述,以及包中的函数名称和数据集名称的列表

简介

R 包为 R 函数集合。

载入包
R 包在使用前,需要载入当前的 R 环境。载入包命令:

library("package_name", lib.loc = "path to library")

安装多个包:

install.packages(c("ggplot2", "devtools", "dplyr"))

如果下载太慢,可以设置镜像:Tools > Global Options… > Packages > Choose HTTPS CRAN Mirror。

安装包

install.packages(pkgs, lib, repos = getOption("repos"),
                 contriburl = contrib.url(repos, type),
                 method, available = NULL, destdir = NULL,
                 dependencies = NA, type = getOption("pkgType"),
                 configure.args = getOption("configure.args"),
                 configure.vars = getOption("configure.vars"),
                 clean = FALSE, Ncpus = getOption("Ncpus", 1L),
                 verbose = getOption("verbose"),
                 libs_only = FALSE, INSTALL_opts, quiet = FALSE,
                 keep_outputs = FALSE,)

参数:

  • repos,指定镜像

以安装sos包为例。sos 包用来搜索某些函数的帮助文档。 在RStudio中用 Tools 菜单的“Install Packages”安装, 输入sos就可以安装该扩展包。

如果不用RStudio, 在 R 图形界面选菜单“程序包-安装程序包”,在弹出的“CRAN mirror”选择窗口中选择一个中国的镜像如 “China (Beijing 2)”, 然后在弹出的“Packages”选择窗口中选择要安装的扩展软件包名称, 即可完成下载和安装。

还可以用如下程序制定镜像网站(例子中是位于清华大学的镜像网站)并安装指定的扩展包:

options(repos=c(CRAN="http://mirror.tuna.tsinghua.edu.cn/CRAN/"))
install.packages("sos")
  • 安装一个包
install.packages("package name")
  • 一次安装多个包
install.packages(c("ggplot2", "reshape2", "dplyr"))

选择安装路径

如果权限允许,可以选择安装在R软件的主目录内或者用户自己的私有目录位置。

由于用户对子目录的读写有权限问题,有时不允许一般用户安装扩展包到 R 的主目录中。此时可以用 .libPaths()查看允许的扩展包安装位置。

install.packages() 中用 lib= 指定安装位置:

print(.libPaths())
## [1] "D:/R/R-3.3.1/library"
install.packages("sos", lib=.libPaths()[1])

更新包

update.packages()

对每个可更新包,会出现一个弹窗询问是否更新。如果不需要弹窗,直接更新,可以设置:

update.packages(ask = FALSE)

示例:同时更新 ggplot2, reshape2 和 dplyr 三个包

update.packages(c("ggplot2", "reshape2", "dplyr"))

更新 package 后,需要启动新的 R 会话才能使用新版本的 package。

如果在更新前已经加载了该 package,则需要关闭旧 R 会话,打开新的 R 会话。

devtools

devtools R package 提供从 CRAN 以外的地方安装 package 的功能。devtools 提供了:

  • install_github
  • install_gitorious
  • install_bitbucket
  • install_url

等函数。它们功能类似 install.packages,但是 repository 不同。其中 install_github 特别有用,因为许多 R 开发者在 GitHub 上提供它们包的开发版本。开发版本包含新功能和补丁,但是可能没有 CRAN 版本稳定。

GitHub 和 BioConductor

有一些扩展包没有在CRAN系统提供,而是放在 Github。对于这样的包, 安装方法如下:

if(!require(devtools)) install.packages('devtools')
	devtools::install_github("kjhealy/socviz")

其中 kjhealy 是 Github 网站的某个作者的名称, socviz 是该作者名下的一个R扩展包。

还有一些包需要从Bioconductor网站安装:

  • 需要先安装 BiocManager
  • 然后用 BiocManager 安装 Bioconductor 中的包

示例如下:

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

加载包

例如,载入 RWeka 包:

library(RWeka)
  • 查看当前库中有哪些 package
library()

迁移扩展包

在每一次 R 软件更新后,需要重新安装原来的软件包, 这个过程很麻烦。 如果仅仅是小的版本更新, 比如从3.5.1变成3.5.2, 或者从3.4.2变成3.5.0, 可以在安装新版本后, 临时将新版本的 library 子目录更名为 library0, 将老版本的library子目录剪切为新版本的library子目录, 然后将library0中所有内容复制并覆盖进入library子目录, 删除library0即可。 然后在基本R中(不要用RStudio)运行如下命令以更新有新版本的包:

options(repos=c(CRAN="http://mirror.tuna.tsinghua.edu.cn/CRAN/"))
update.packages(checkBuilt=TRUE, ask=FALSE)

如果版本改变比较大, 可以用如下方法批量地重新安装原有的软件包。 首先,在更新R软件前,在原来的R中运行:

packages <- .packages(TRUE)
dump("packages", file="packages-20180704.R")

这样可以获得要安装的软件包的列表。 在更新R软件后, 运行如下程序:

options(repos=c(CRAN="http://mirror.tuna.tsinghua.edu.cn/CRAN/"))
source("packages-20180704.R")
install.packages(packages)

安装时如果提问是否安装需要编译的源代码包, 最好选择否, 因为安装源代码包速度很慢还有可能失败。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值