Global variables in R

Global variables in R

As Christians answer with assign() shows, there is a way to assign in the global environment. A simpler, shorter (but not better … stick with assign) way is to use the <<- operator, ie

    a <<- new 

inside the function.

I found a solution for how to set a global variable in a mailinglist posting via assign:

a <- old
test <- function () {
   assign(a, new, envir = .GlobalEnv)
}
test()
a  # display the new value

Global variables in R

What about .GlobalEnv$a <- new ? I saw this explicit way of creating a variable in a certain environment here: http://adv-r.had.co.nz/Environments.html. It seems shorter than using the assign() function.

Leave a Reply

Your email address will not be published.