我想评估函数g
中的某个函数f
,但g
的参数会在列表中提供给f
。
f
和g
以这种方式定义:
g <- function(a,b){
a+b
}
f <- function(x, y, l){
# do some stuff on x and y
z <- g(l) # Not working
# do some stuff on x, y and z
}
我想以这种方式运行f
:
f(xx, yy, list(a=aa, b=bb)
其中aa
,bb
,xx
,yy
是某些R对象。
我怎么能这样做?
答案 0 :(得分:2)
您应该以这种方式使用do.call
功能:
f <- function(x, y, l){
# do some stuff on x and y
z <- do.call(g,l)
# do some stuff on x, y and z
}