使用envir = .GlobalEnv将文件中的变量视为全局变量

时间:2015-06-08 12:35:52

标签: r

file1.r 中,我们有:

foo1 <- function(x, envir = .GlobalEnv){
var1 <- 5
}

在我们运行的文件 runme.r 中,我们有:

source("file1.r")

foo1("some input")

# we ask to print var1
# and receive "object not found"
# although function foo1 is in envir = .GlobalEnv
var1

我正在寻找使用环境的解决方案。 大家先谢谢你们。

1 个答案:

答案 0 :(得分:0)

据我了解试试这个。请告诉我您是如何调用该功能的。我给出了两种适合你的方法。

foo1 <- function(x){

  assign("var1", 5, envir = .GlobalEnv)

}
foo1(1)

foo2 <- function(){
  assign("var2", 15, envir = .GlobalEnv)
}

foo2()

> var1
[1] 5
> var2
[1] 15
>