Variables globales en R


Respuestas:


174

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.


41
Este enfoque en realidad no se guarda en el entorno global, sino en el ámbito primario. A veces, el ámbito primario será el mismo que el entorno global, aunque en algunos casos con muchas funciones anidadas no lo será.
LunaticSoul

55
¿Por qué se assignprefiere <<-?
Jasha

44
@Jasha <<-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.
Bob

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.