Respuestas:
Como assign()muestra la respuesta de Christian con , hay una manera de asignar en el entorno global. Una manera más simple, más corta (pero no mejor ... seguir con la asignación) es usar el <<-operador, es decir
a <<- "new"
dentro de la función.
assignprefiere <<-?
<<-buscará en la cadena de recintos hasta el entorno global y asignará a la primera variable coincidente que encuentre. Hipotéticamente, si tiene una función f()anidada en un cierre g()y aexiste en g(), entonces el uso de a <<-in f()asignará a ain g(), no al entorno global. Sin embargo, a menudo esto es lo que quieres.
Encontré una solución sobre cómo establecer una variable global en una publicación de la lista de correo a través de asignar :
a <- "old"
test <- function () {
assign("a", "new", envir = .GlobalEnv)
}
test()
a # display the new value