有时有一个函数具有任意数量的参数。比如bootstrapPage
封装闪亮的功能。如果我有一个 data.frame 并且我想为一行创建一个小部件,那么我还没有找到一种根据 data.frame 的行号传递参数数量的漂亮方法。到目前为止,我生成了脚本并使用了eval(parse(text="..."))
实际上,在 R 中传递给函数的参数结构(键和值)类似于 a list
,所以我想知道是否有一种方法可以将参数作为 R 中的列表传递。
更具体地说,如果我有一个函数f
和一个列表,有没有办法根据 的名称和参数的名称以及参数的位置和位置的匹配来argv
传递对象?argv
f
argv
f
argv
f
例如,让
f <- function(a, b) a + b
argv <- list(a=1, b=2)
我应该如何将其传递argv
给f
相当于f(a=argv$a, b=argv$b)
?
或者如果我们有:
f <- function(a, b, ...) { # some codes }
argv <- list(a = 1, b = 2, 3, 4, 5)
我应该如何将其传递argv
给f
相当于f(a=argv$a, b=argv$b, argv[[3]], argv[[4]], argv[[5]])
?
谢谢!