可以使用R
p_load
包中的函数pacman
函数使用以下命令加载多个R
包:
pacman::p_load("ggplot2", "lme4")
但是,我想使用像这样的命令
Packages <- c("ggplot2", "lme4")
pacman::p_load(Packages)
哪个不起作用。想知道如何实现这一目标?
答案 0 :(得分:2)
在character.only
TRUE
Packages <- c("ggplot2", "lme4")
Packages %in% loadedNamespaces() # check if the packages are loaded
# [1] FALSE FALSE
pacman::p_load(Packages, character.only = TRUE)
Packages %in% loadedNamespaces()
# [1] TRUE TRUE
来自?p_load
:
“
character.only
:logical。如果为TRUE,那么p_load只接受一个输入,这是一个包含要加载的包名称的字符向量。”
答案 1 :(得分:2)
或者,执行do.call(p_load, packages)
。
你也可以在没有Pacman的情况下做到这一点:
lapply(packages, require, character.only = TRUE)
但正如其他人所说,不推荐,因为它会降低清晰度。
答案 2 :(得分:1)
在char
函数中使用参数p_load
。
char:包含要加载的包的字符向量
foo <- c("data.table", "ggplot2")
pacman::p_load(char = foo)