【发布时间】:2013-12-17 22:55:49
【问题描述】:
我想要做的很简单:
required_pkgs <- c("A", "B", "C")
for (pkg in required_pkgs) {
library(pkg)
}
在运行时,R 解释器尝试查找(3 次)一个名为“pkg”的包(当然它在第一次尝试时失败),而我确实希望它是“A”、“B”、 “C”。
当然,我对语言的无知让我错过了重点,但为什么会这样呢? R 是否希望我编写以下代码:
library(A)
library(B)
library(C)
我确实需要迭代每个包加载以处理丢失的包并回退到安装它或选择替代方案。
基本上我抱怨无法遍历包名称数组,每次使用 for 参数 (pkg) 调用 library 导致 R 尝试加载一个不存在的pkg 库。这可以通过在library 的调用中添加character.only=TRUE 参数来解决。
编辑:更多信息,抱歉如此含糊......
【问题讨论】:
-
我自己在这里找到了答案:stat.ethz.ch/R-manual/R-devel/library/base/html/library.html 和参数
character.only将解决我的问题。 -
谢谢@zx8754!这是一个很好的。这个问题/疑问的答案可能是我自己之前的评论。
标签: r