代码:
env <- new.env()
assign("X", value = 2, pos = env)
eval(X, envir = env)
导致错误:&#34;未找到X&#34;
然而:
ls(envir = env)
返回&#34; X&#34;
为什么eval不返回2?
答案 0 :(得分:4)
这应该有效:
eval(quote(X),envir=env)
问题是它是否尝试评估X然后将其传递给eval
,但X在主环境中没有值,因此它会出错。放quote
告诉eval在X
env