我想调用增援来帮助解决这个错误,如下所示:
首先我创建了我的环境:
envizito <- new.env(parent = emptyenv())
attr(envizito, "name") <- "envizito"
Run Code Online (Sandbox Code Playgroud)
并分配了一个名为的新变量aaa:
envizito$aaa <- 12
Run Code Online (Sandbox Code Playgroud)
我创建了一个函数:
FUNn <- function() {print(envizito$aaa)}
environment(FUNn)
# <environment: R_GlobalEnv>
Run Code Online (Sandbox Code Playgroud)
然后,我改变了它的环境envizito:
environment(FUNn) <- envizito
environment(FUNn)
# <environment: 0xc20b0a8>
#attr(,"name")
#[1] "envizito"
Run Code Online (Sandbox Code Playgroud)
但是在通话后FUNn()它显示以下错误:
FUNn()
# Error in { : could not find function "{"
Run Code Online (Sandbox Code Playgroud)
PS:虽然environment(FUNn)指向内存中的同一个地方,但在我打电话时却没有出现ls()
ls(envir = envizito, all.names = TRUE)
# [1] "aaa"
Run Code Online (Sandbox Code Playgroud)
任何意见和建议将不胜感激!感谢您的关注.