我有一长串变量,我正在使用一个函数将它们包装到一个列表中。然后将输出列表传递给另一个函数。
例如,
#var1:var10
foo <- function(){
var1 = 1
var2 = 3
var3 = var1 + var3
var4 = var3*var2
#e.t.c
return(unlist(as.list(environment())))
}
params <- foo()
foo_solve(model,params)
有没有办法访问 foo 中定义的变量并修改/覆盖默认值,然后foo重新评估并传递给foo_solve?
我试过这种方法:
foo <- function(..., args = list()) {
defaults <- list(a = -1, c = -3, d = -4)
Args <- Reduce(modifyList, list(defaults, args, list(...)))
return(unlist(Args))
}
但是基于其他变量计算的变量呢?
list(a = value, c = value2, d = a + d)不起作用。
提前致谢!