带有计数器的R中的全局变量

时间:2017-03-13 04:27:30

标签: r global-variables

我在R的全局变量和/或工作流程中有一个问题。我有以下代码。

{{1}}

我原本希望功能g能给我1 2 3,4 5 6,7 8 9.相反,我得到1 1 1,1 1 1,1 1 1.有人可以帮我找出原因吗?谢谢!

1 个答案:

答案 0 :(得分:1)

我们可能需要执行赋值运算符(<<-)来搜索所有父环境以进行赋值

g <- function(){
  f <- function(){
  counter <<- counter + 1
  print(counter)
 }
f()
f()
f()
}

g()
#[1] 1
#[1] 2
#[1] 3
g()
#[1] 4
#[1] 5
#[1] 6

g()
#[1] 7
#[1] 8
#[1] 9