R Global Variables
Global Variables
Variables that are created outside of a function are known as global variables.
Global variables can be used by everyone, both inside of functions and outside.
Example
Create a variable outside of a function and use it inside the function:
txt <- "awesome"
my_function <- function() {
paste("R is",
txt)
}
my_function()
Try it Yourself »
If you create a variable with the same name inside a function, this variable will be local, and can only be used inside the function. The global variable with the same name will remain as it was, global and with the original value.
Example
Create a variable inside of a function with the same name as the global variable:
txt <- "global variable"
my_function <- function() {
txt = "fantastic"
paste("R is", txt)
}
my_function()
txt # print txt
Try it Yourself »
If you try to print txt
, it will return "global variable" because we are printing
txt
outside the function.
The Global Assignment Operator
Normally, when you create a variable inside a function, that variable is local, and can only be used inside that function.
To create a global variable inside a function, you can use the global assignment operator <<-
Example
If you use the assignment operator <<-
, the variable belongs to the global scope:
my_function <- function() {
txt <<- "fantastic"
paste("R is",
txt)
}
my_function()
print(txt)
Try it Yourself »
Also, use the global assignment operator if you want to change a global variable inside a function:
Example
To change the value of a global variable inside a function, refer to the variable by using the global
assignment operator <<-
:
txt <- "awesome"
my_function <- function() {
txt <<- "fantastic"
paste("R is", txt)
}
my_function()
paste("R is",
txt)
Try it Yourself »