In the following test, the variable x is supposed to be modified within the
function test.save.x. It works as expected util using the save command.

# initialize x.file
x <- 1
save(x, file="x.file")
rm(x) # Remove x from R_GlobalEnv
exists("x") # FALSE

# define test
test.save.x <- function(){
save.x <- function(){
save(x, file="x.file")
}
 change.x <- function(){
load("x.file", parent.frame(n = 2)) # load x to upper level frame
x <<- x + 1
save.x() # If comment this line. x variable will not appear in R_GlobalEnv
}
 change.x()
}

test.save.x()
exists("x") # TRUE. Why?

	[[alternative HTML version deleted]]

