Una breve y general explicación del espacio de trabajo y de cómo ejecutar el código.
Como señalamos antes, en este curso utilizaremos R a través de la plataforma RStudio. Si solo abres R en tu computador, lo que verás es una consola. Cuando trabajamos en ella escribimos directamente el código que queremos que queremos ejecutar. El signo >
nos indica que R está listo y esperando que escribamos algo.
Si abres RStudio verás que te aparece la misma consola, pero además te encontrarás con otros paneles. Estos paneles nos ayudan a organizar nuestro trabajo y hacen todo el proceso más sencillo.
¿Para qué sirven estos paneles? Comentemos primero el panel de abajo a la derecha. Si te fijas, el panel tiene varias ventanas:
El panel de arriba a la derecha, por su parte, contiene el historial de funciones que hemos ejecutado (History), la opción para generar conexiones a bases de datos externas (Connections) y el Environment. Este último panel es muy importante y entender lo que nos muestra es fundamental para comprender cómo funciona R.
Por ahora está vacío porque no hemos creado ningún objeto o variable, pero cuando creemos alguno es aquí donde aparecerá. Ya volveremos a hablar sobre este panel cuando comenzemos a trabajar con datos.
Hay un cuarto panel (que probablemente todavía no te aparece) y que es el que utilizamos para escribir el código que queremos que R ejecute, es decir, el panel para nuestro script. Para crear un nuevo script podemos:
comando
+ shift
+ n
(Mac) o control
+ shift
+ n
(Linux / Windows)¡Ahora ya están los cuatro paneles!
Es en el script donde escribiremos el código que queremos que R ejecute. En la sección revisaremos cómo hacer eso y cuál es la lógica detrás del funcionamiento de R.
Ahora que tenemos nuestro escenario de trabajo listo, podemos empezar a programar. Como vimos en clases, la lógica de R es la siguiente: creamos objetos a los que les asignamos un valor a través de una flecha de asignación: <-
. Por ejemplo, si escribimos esto en nuestro panel con el script:
hoy <- "Jueves 8 de agosto"
le estamos pidiendo a R que cree un objeto que se llame hoy
que tenga como valor “Jueves 8 de agosto”. Todavía no hemos ‘ejecutado’ el código, así que nada ha pasado aún. Como todo en R, hay varias opciones para hacer esto. Si hacemos clic en el botón Run que está en la barra del script, se ejecutará la línea de código en la que está actualmente el cursor y este se moverá automáticamente a la siguiente línea.
Eso mismo podemos hacerlo usando el atajo de teclado ctrl
+ enter
(si estás en Linux o Windows) o comando
+ enter
si estás en Mac.
¡Ejecutemos el código y veamos qué pasa!
Ocurrieron dos cosas: 1. Lo mismo que habíamos escrito en nuestro script se envió a la consola (Console). 2. Como consecuencia, se creó un objeto en nuestro Global Environment. Como ahora el objeto existe, podemos llamarlo por su nombre. Es decir, si ejecutamos hoy
, obtendremos en la consola el valor que ese objeto tiene:
Podemos crear objetos de distinto tipo, que pueden incluir otros datos, por ejemplo, valores numéricos. Creemos ahora un objeto que se llame edades
al que le asignemos como valor varios números. Esos números los pondremos dentro de c()
, de concatenar o combinar, así:
edades <- c(22, 34, 56, 32, 64, 15, 27, 20)
Si ejecutamos el código, el objeto edades
aparecerá en el panel de la derecha:
Entonces, el primer aspecto importante del funcionamiento de R es que a un objeto le podemos asignar valores usando <-
. En este caso los valores los escribimos directamente en la consola, pero podríamos haberlo hecho desde un archivo Excel, por ejemplo. En las próximas clases veremos cómo hacer eso.
A los objetos que creamos podemos aplicarles funciones. Las funciones tienen la siguiente estructura:
nombre(argumento1, argumento2, etc.)
Es decir, tienen un nombre que suele ser ilustrativo de lo que hace y dentro del paréntesis solemos indicar a qué objeto la queremos aplicar. Ese suele ser el primer argumento. Los otros argumentos nos permiten especificar cosas. Probemos aplicar la función para calcular la media (mean, en inglés) al objeto edades
: mean(edades)
. La escribimos en el script, la ejecutamos y nos entrega el resultado en la consola abajo:
Podemos también buscar cuál es el número menor en nuestros datos con min()
. Acá podríamos verlo a simple vista, pero si tuviera un millón de números no sería tan fácil:
El segundo aspecto importante del funcionamiento de R es que podemos aplicarle funciones a los objetos que creamos. Con esos dos principios (crear objetos y aplicar funciones) podemos hacer infinitas cosas.
R trae muchas funciones incluidas que nos permiten hacer cosas básicas como las que vimos recién. Pero como es un lenguaje de programación abierto, la misma comunidad va creando nuevas funciones que extienden las posibilidades de lo que podemos hacer. Esas funciones nuevas se distribuyen a través de “paquetes”, es decir, conjuntos de código, documentación y datos que nos entregan nuevas posibilidades de cosas que hacer con R.