Espacio de trabajo en R
Cuando trabajes con R, puede que te interese guardar los objetos de datos de tu sesión en lo que se conoce como espacio de trabajo o workspace en R. De esta manera, podrás cargar el espacio de trabajo en R la próxima vez que lo inicies, para acceder a los objetos dentro de él.
Objetos en el espacio de trabajo
En primer lugar, para conocer los objetos que tenemos en la memoria se puede utilizar la función ls
. Como ejemplo, supongamos que inicias tu sesión de R y ejecutas el siguiente código:
a <- 1:10
b <- log(50)
Así, cuando llamemos a la función ls
, se mostrarán los objetos en memoria.
ls() # Objetos en la memoria
"a" "b"
Limpiar el espacio de trabajo
A veces es necesario limpiar el espacio de trabajo para evitar sobrescribir algunos objetos o simplemente para dejar limpia la sesión. Si te estás preguntando cómo limpiar el espacio de trabajo en R, a continuación se muestran las dos posibles opciones:
Para borrar solo un objeto puedes usar la función rm
.
# Borrar el objeto 'a'
rm(a)
# Comprobar si el objeto 'a' todavía está en la memoria
a
Error: objeto 'a' no encontrado
Para borrar el entorno de trabajo en R puedes usar el siguiente código:
# Borra todos los objetos en la sesión de R
rm(list = ls())
# Comprueba si todavía hay algún objeto en la sesión
ls()
character(0)
Nótese que character(0)
como output de la función ls
significa que no hay objetos en el entorno de trabajo.
Guardar el entorno de trabajo
Para guardar el espacio o entorno de trabajo en R se puede utilizar la función save.image
. Los datos se guardarán en un archivo de tipo RData
(también conocido como rda
).
# Borramos todo lo que haya en la memoria
rm(list = ls())
# Creamos unas variables
x <- 20
y <- 34
z <- "casa"
# Guardamos los objetos en mis_Objetos.RData
save.image(file = "mis_Objetos.RData")
En el caso de que sólo quieras guardar algunos objetos de tu wokspace puedes usar la función save
de R.
# Guardando los objetos 'x' e 'y'
save(x, y, file = "mis_dos_Objetos.RData")
Sin embargo, cuando se quiere guardar un solo objeto es conveniente utilizar la función saveRDS
que guardará los datos en el formato RDS
.
saveRDS(x, file = "mi_objeto.rds")
Guardar el espacio de trabajo resulta fundamental cuando trabajamos con scripts que tardan mucho en ejecutarse (como ejemplo destacamos los estudios de simulación con gran carga computacional). De esta forma, podremos cargar los resultados sin tener que ejecutarlos cada vez que abramos el script.
Cargar el espacio de trabajo en R
Una vez hayas guardado el espacio de trabajo puedes cargarlo y así evitar tener que volver a ejecutar tu script para tener en memoria los objetos.
Por una parte, para cargar un objeto RData se puede utilizar la función load
, especificando el nombre del archivo entre comillas.
# Cargando el entorno de trabajo
load("mis_dos_Objectos.RData")
Una vez cargado puedes llamar a los objetos y acceder a ellos.
y
34
Por otra parte, para leer un objeto RDS se puede utilizar la función readRDS
y especificar el archivo .rds
.
readRDS("mi_objeto.rds")
20
Historial de comandos
Relacionado con el espacio de trabajo está el historial de ejecución de código. Puedes recuperar las líneas de comandos introducidas antes haciendo click en la línea de comandos y pulsando la flecha superior del teclado, en caso de que quieras volver a ejecutar o modificar algo. También puedes usar la función history
que muestra los últimos comandos utilizados.
# Muestra los últimos comandos ejecutados (25 por defecto)
history()
# Muestra los 3 últimos comandos ejecutados
history(3)