问题描述
如何在 R 中安装和加载多个缺失的包?
- 如何确定缺少哪些包?
- 为什么使用 lapply() 加载多个包被认为是不好的做法?
- 如何加载多个包?
解决方法
我会使用 pacman
包。它同时加载几个包,如果其中任何一个没有安装,它就会安装它们(使用相同的功能)。试试看:
install.packages("pacman")
pacman::p_load(tidyverse,....)
,
install.packages()
函数接受要安装的软件包向量。您不需要任何其他包来执行此操作:
install.packages(c("dplyr","magrittr","tidyr"))
默认安装依赖项。所以你不必担心。
,您可以使用函数 search()
来确定哪些包已经加载。
许多包已经依赖于其他包,但最流行的一个是 tidyverse
,这是一个非常有用的工具包,它加载了一组有用的包,这些包对于数据导入、数据操作、图形和其他活动同步进行。
要加载 tidyverse
,您只需调用 library(tidyverse)
并立即加载由 Hadley Wickham 开发的以下软件包:
-- Attaching packages ---------------------------------------------------------------------------------------------- tidyverse 1.3.0 --
v ggplot2 3.3.2 v purrr 0.3.4
v tibble 3.0.4 v dplyr 1.0.2
v tidyr 1.1.2 v stringr 1.4.0
v readr 1.4.0 v forcats 0.5.0
,
您可以使用 pkg_attach2
中的 xfun
函数(更多信息在此处,在“加载和附加包”下:https://yihui.org/xfun/):
函数 pkg_attach2() 是 pkg_attach(...,install = TRUE),这意味着如果软件包不可用,请安装它。这 函数也可以处理多个包。
函数 loadable() 测试包是否可加载。
,这可能会有所帮助:
if (!require("pacman")) install.packages("pacman")
pacman::p_load(package1,package2,package_n)