考虑一个例子:
我想将带或不带参数的函数传递给另一个函数,并按以下方式使用它:
genfx <- function(fx, fy, M, fs, ...){
a <- 1
b <- fx(a)
...
}
Run Code Online (Sandbox Code Playgroud)
当fx = dunif它工作,但我怎么能传递其他参数fx,例如,dunif(min=-0.5, max-0.5))?是否可以在不指定其他参数集的情况下执行此操作genfx?
没有更多细节,我们可能不需要它们,最简单的情况就是插入...到调用中fx,好像它...只是另一个参数:
genfx <- function(fx, fy, M, fs, ...){
a <- 1
b <- fx(a, ...)
## more code here
}
Run Code Online (Sandbox Code Playgroud)
例如:
genfx <- function(fx, ...){
a <- 1
b <- fx(a, ...)
b
}
> genfx(dunif)
[1] 1
> genfx(dunif, min = -0.5, max = 1.5)
[1] 0.5
Run Code Online (Sandbox Code Playgroud)
(注意我在示例中为了简单起见删除了其他参数.虽然在这种情况下这不是必需的.)