我正在使用具有以下语法功能的R API:
somefun(...)
示例电话:
somefun(foo = list(a = 10, b = 20))
由于可以使用此功能设置许多变量(不仅仅是' foo')如何更改" foo"到脚本中的变量名?类似的东西:
x = "foo" ## or x = "bar", etc
somefun(x = list(a = 10, b = 20))
答案 0 :(得分:0)
可能不是最干净的。您可以使用eval
+ parse
somefun <- function(...) {
as.list(match.call())[-1]
}
somefun(foo = list(a = 10, b = 20))
#$foo
#list(a = 10, b = 20)
eval(parse(text=paste0("somefun(", x, " = list(a = 10, b = 20))")))
#$foo
#list(a = 10, b = 20)