我想将对象从一个函数传递到另一个嵌套函数分配环境。 下面是我的代码示例,它不起作用。如何通过在函数中分配环境来实现这一点?
sumi <- function(x,y) {
my.env <- new.env()
my.env$rumi <- function() {
my.env$k <- x[1]
my.env$f <- y[1]
}
k <- get("k", my.env)
f <- get("f", my.env)
z <- k+f
return(z)
}
答案 0 :(得分:0)
代码定义但从不运行rumi
所以如果从不运行它将创建的对象。
添加标记为###的行有效:
sumi <- function(x,y) {
my.env <- new.env()
my.env$rumi <- function() {
my.env$k <- x[1]
my.env$f <- y[1]
}
my.env$rumi() ###
k <- get("k", my.env)
f <- get("f", my.env)
z <- k+f
return(z)
}
sumi(1, 2)
## [1] 3