来自循环的R全局和局部变量

R global and local variable from loops

我有以下代码。如何将全局变量 a 分配给 b?在下面的例子中,我想将全局 a(包含 "new")分配给 b。但是 R 将本地 a 分配给 b。此外,有什么方法可以用函数检查全局变量的值吗?如果全局 a 的值为 "old",我想采取一些与 a 的值为 "new"

时我将采取的行动不同的行动
a <- "old"
test <- function () {
  a="new1"
  a<<-"new"
  b<<-a
  print(paste("b is ",b))
}
test()

换行

b<<-a

进入

b<<- get0("a", envir= parent.frame() )

应该这样做。但是,请注意 Gregor 的评论,看看这是否真的是您想要的。