【发布时间】:2016-11-24 21:33:51
【问题描述】:
我有一个关于基本 R 用法的问题。以前可能会问过,但是我无法找到解决问题的方法。
我有一个调用另一个函数的函数。使用省略号 (...) 传递第二个函数的参数。但是,我收到错误消息:object "OBJECT" not found。
f1 <- function(a, ...) {
print(a)
f2(...)
}
f2 <- function(...) {
print(b == TRUE)
print(runif(c))
}
f1(2, b = FALSE, c = 2)
这给了我:Error in print(b == TRUE) : object 'b' not found。
我知道可以使用args <- list(...) 解决这个问题,然后分别调用每个参数,但我想当有很多参数(不仅仅是两个)时这会变得复杂。
问题
如何使用省略号将参数从f1 传递到f2?
【问题讨论】:
-
既然您知道
f2处理哪些参数,为什么不用特定参数定义f2?另外,除了list(...)$,如果您觉得更方便,您可以访问...和..1等。
标签: r