分配给 R 中的环境
Assigning to an environment in R
代码:
env <- new.env()
assign("X", value = 2, pos = env)
eval(X, envir = env)
结果出错:"X not found"
但是:
ls(envir = env)
returns "X"
为什么 eval return 2 没有?
这应该有效:
eval(quote(X),envir=env)
问题是它试图评估 X,然后将其传递给 eval
,但 X 在您的主环境中没有价值,因此它给出了错误。放置 quote
告诉 eval 在 env
中寻找 X
代码:
env <- new.env()
assign("X", value = 2, pos = env)
eval(X, envir = env)
结果出错:"X not found"
但是:
ls(envir = env)
returns "X"
为什么 eval return 2 没有?
这应该有效:
eval(quote(X),envir=env)
问题是它试图评估 X,然后将其传递给 eval
,但 X 在您的主环境中没有价值,因此它给出了错误。放置 quote
告诉 eval 在 env
X