1 Instalación de R y primeros pasos
1.1 Introducción
En este primer capítulo te enseño a instalar el lenguaje R en cualquier ordenador, da lo mismo que sea un ordenador Windows que un ordenador Apple e incluso, para los más osados, un ordenador Linux.
Como he indicado en la Presentación, R es un lenguaje de programación gratuito, fácil de conseguir e instalar. Todo lo que se necesita es una conexión a internet y unos pocos minutos.
1.2 Instalar R
La mejor manera de instalar R es descargándolo de los servidores de The Comprehensive R Archive Network (CRAN) que se ocupa de almacenar y conservar todas las versiones de R y todas las librerías que se publican. Sin embargo, la instalación depende del sistema operativo que tenga tu ordenador.
1.2.1 Windows
Si tu ordenador funciona con Windows, la manera más sencilla de instalarlo es descargando la versión más reciente desde este enlace https://cran.r-project.org/bin/windows/base/, que te llevará a la página de descargas para Windows. Ahí tienes que clicar en Download R 4.2.2 for Windows
(los números tras el 4 pueden cambiar ya que se actualiza con asiduidad). Tan pronto como lo hagas, se descargará en tu máquina el instalador. Ahora solo tienes que proceder a instalarlo como harías con cualquier otro programa de Windows.
1.2.2 Mac OS
Si tienes un ordenador Apple puedes obtener la última versión desde este enlace https://cran.r-project.org/bin/macosx/. La página es un poco liosa. Una vez llegues a la página de CRAN, busca en la parte inferior izquierda un enlace que diga R-4.2.2.pkg
(los dos últimos números pueden cambiar ligeramente, pues la actualización es constante). Haz clic sobre ese enlace, con lo que se descargará el instalador en tu ordenador. Cuando lo tengas, procede tal y como harías con cualquier otro programa para Mac.
1.2.3 Linux
Si tu ordenador es Linux, la instalación depende de la distribución de Linux que tengas. En cualquier caso, todas ellas se encuentran en esta página de CRAN https://cran.r-project.org/. Elige la que convenga a tu máquina e instálala. Si eres usuario de Linux no creo que te cueste seguir las instrucciones que ofrecen.
1.3 Instalar RStudio
Ya podrías trabajar con R, pero vamos a poner las cosas un poco más fáciles y para eso necesitas RStudio. Esto es lo que los informáticos llaman un IDE, es decir, un entorno de desarrollo integrado, que te hará la vida mucho más sencilla porque es una especie de escritorio para trabajar con R. Lo primero es instalarlo.
Cuando hagas clic en Download RStudio accederás a la página de descargas de RStudio. De todas las posibilidades que ofrece, elige la gratuita (la de la izquierda) y pulsa de nuevo sobre Download
. Avanzará la página hasta la sección Installer for Supported Platforms
. Ahí solo tienes que elegir la que sea adecuada para tu máquina: Windows, MacOS o alguna variedad de Linux (Ubuntu, Fedora, etc.). Cuando lo hayas descargado, solo tienes que proceder de la misma manera que cuando instalas un nuevo programa.
Cuando hayas acabado de instalar R y RStudio, deberás tener en el Escritorio (en Windows) o en el Launchpad (en Mac), dos accesos directos, uno para cada programa (es posible que en Windows haya dos para R, uno para R de 32 bits y otro para R de 64 bits, aunque puedes evitarlo al instalarlo si tienes claro qué tipo de máquina es la tuya).
En la red hay multitud de tutoriales de cómo instalar R y RStudio. Realmente no los necesitas, pero aquí tienes dos que te muestran el proceso de instalar tanto R como RStudio en un ordenador Windows. En Mac no es mucho más diferente.
1.4 Primeros pasos con R
Si todo el proceso de instalación, tanto de R como de RStudio, ha ido bien, tendrás en el escritorio un acceso directo a R (en un Mac puede que esté en el Launchpad). Si haces clic sobre ese acceso, se abrirá una ventana como la que hay en la imagen de la figura 1.1 (aunque variarán algunos detalles de lo que hay dentro de ella).
Observa que al final está el símbolo >
(lo he señalado con una flecha roja). Ese es el punto en donde escribirás los comandos y expresiones que quieres que ejecute R. Escribe ahí:
No habrá pasado nada. Ahora pulse intro
. Aparecerá el resultado
## [1] 4
##
que se han impreso a la izquierda del resultado no se imprimirán en tu consola. Son una convención tipográfica para que diferencies con facilidad el código de los resultados.
El número entre corchetes [1]
tampoco es el resultado, sino el número índice del primer elemento o valor de cada línea de resultados. Ese número puede incrementarse (y se incrementará en muchos de los resultados que obtendrás). Comprúebalo. Escribe en la consola, que así es como se llama el espacio donde introduces las órdenes en R, 100:150
y pulsa intro
.
:
es un operador de R que sirve para generar cada uno de los números que existan entre los dos números que hay a cada lado de los dos puntos. Es una forma muy sencilla de crear una secuencia de números.
En la pantalla, dependiendo del ancho de la ventana de la consola, aparecerá algo semejante a esto:
## [1] 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124
## [26] 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149
## [51] 150
Lo que le has pedido a R es que cree la secuencia de números comprendida entre 100 y 150, lo cual ofrece 51 valores. Fíjate que en cada línea aparece un número entre corchetes. Estos números tan solo indican que la segunda línea comienza con el 18º valor y que en la tercera lo hace el 35º. Por lo general puedes pasar de esta información, pero más adelante verás que es muy interesante porque te permitirá hacer muchas cosas con mayor facilidad.
Si tecleas una orden incompleta aparecerá en la consola un +
en el margen izquierdo, lo que significa que R está esperando a que introduzcas el resto del comando. Tienes dos posibilidades: concluirlo
> 5 -
+ 1
[1] 6
>
o abortarlo pulsando la tecla esc
.
> 5 -
+
>
Asimismo, si tecleas una orden que R no reconoce, la respuesta será un mensaje de error. Cuando aparezcan no te asustes. R tan solo te está diciendo que no ha entendido o no sabe qué tiene que hacer con lo que le has pedido y te aclara dónde está el error.
> 3 % 4
Error: unexpected input in "3 % 4"
3 / 4
, pero pulsé la tecla %
en vez de /
, luego R me indicó que he intentado usar algo inesperado.
1.4.1 Unas pruebas
Vas hacer unas pocas pruebas, como si fuera una calculadora, para que le cojas el aire a la consola de R, lo que me permitirá introducir algunos tecnicismos. Copia cada una de las líneas y pulsa intro
al final de cada una de ellas. El resultado deberá aparecer inmediatamente y debe ser idéntico al que te muestro. Siempre se encuentra a la derecha del número entre corchetes:
## [1] 15
## [1] 5
## [1] 87650
## [1] 8765
## [1] 8765
Cada vez que acabes de escribir una orden o una expresión, debes pulsar intro
para que se ejecute. No lo olvides. Podrías pasarte un buen rato esperando a que el ordenador responda sin haberle dado orden alguna.
R tiene algunos valores predefinidos. Uno de los más conocidos, el número pi
, se introduce escribiendo, sencillamente, pi
.
## [1] 31.41593
Para calcular la raíz cuadrada de un número se usa la función sqrt()
(= square root) y entre los paréntesis se pone el número (argumento) que se quiera que utilice para el cálculo.
## [1] 12
Si te olvidas del argmuento
la consola te responderá con un error.
Error in sqrt() : 0 arguments passed to 'sqrt' which requires 1
Para las potencias se usa el acento circunflejo ^
seguido del número al que se quiere elevar el primero
## [1] 144
Hay muchos otros operadores matemáticos que irás viendo a lo largo de estas páginas, pero te anticipo algunos en la tabla 1 y los lógicos en la tabla 2.
Operador | Descripción |
---|---|
+ |
adición |
- |
sustracción |
* |
multiplicación |
/ |
división |
^ o ** |
exponenciación |
x %% y |
resto de la división 5%%2 es 1 |
x %/% y |
división entera redondeo a la baja 5%/%2 es 2 |
Tabla 1. Operadores matemáticos en R |
Operador | Descripción |
---|---|
< |
menor que |
<= |
menor o igual que |
> |
mayor que |
>= |
mayor o igual que |
== |
igual a |
!= |
no igual a |
!x |
Not x |
x | y |
x OR y |
x & y |
x AND y |
isTRUE(x) |
prueba si x es TRUE (verdadero) |
Tabla 2. Operadores lógicos en R |
1.4.2 Objetos
Para que R sea realmente poderoso y no una mera calculadora, debes saber cómo almacenar datos en variables, que en R se llaman objetos.
En R una variable es un nombre que se le asigna a un valor particular, a un dato. Y los nombres de las variables se utilizan en lugar de los números para completar los cálculos y manejar los datos.
Se pueden utilizar tres símbolos para asignar las variables: <-
, =
y ->
, de manera que para asignar el valor 10
a la variable x
puedes hacerlo de una de las tres maneras siguientes:
Aunque se pueden utilizar las tres formas, el predilecto, por ser el más claro, es <-
porque permite ver en primer lugar el nombre de la variable (objeto) y detrás lo que se ha de asignar.
Tras escribir las expresiones anteriores, te habrás dado cuenta de que no se ha impreso resultado alguno. Eso se debe a que lo que has hecho ha sido almacenar en x
el valor 10
. No le has pedido que evalúe nada. Para que veas que x
ha guardado el número 10
. Escribe en la consola
y pulsa intro
. Verás que el resultado es 10
.
## [1] 10
Si le restas 3
a la variable x
,
## [1] 7
x
seguirá teniendo el valor 10
.
## [1] 10
Si ahora asignas el valor 6
a la variable y
por medio de la instrucción
y a continuación ejecutas la operación
se imprimirá el valor
## [1] 60
pero los valores de x
e y
se conservan intactos.
Tan pronto como pulses intro
después de escribr tanto x
como y
se imprimirá el resultado, que tiene que ser
## [1] 10
## [1] 6
1.4.3 Funciones
Por otra parte, R tiene una serie de funciones matemáticas básicas como
## [1] 3.464102
## [1] 12
## [1] 3
## [1] 16
#
que ves tras cada función es el símbolo que se utiliza en R para añadir comentarios. Esto quiere decir que todo lo que haya a la derecha de una #
lo ignorará R y no hará nada.
R es un lenguaje que distingue entre MAYÚSCULAS
y minúsculas
, por lo que el objeto x
no es lo mismo que el objeto X
, y lo mismo sucede con los nombres de las funciones. Así, no existen Sqrt
, Pi
, ni Round
.
Una función en R es una serie de operaciones a las que se les ha asignado un nombre. Siempre se presentan bajo la forma nombre_funcion()
que acepta una serie de argumentos dentro de los paréntesis y que van separados por comas. R tienes cientos de funciones definidas, pero también las puedes definir tú. Ya lo verás en su momento.
Sal de R. Preguntará si quieres guardar la imagen del área de trabajo. Esto está bien para cuando trabajes en serio porque así puedes continuar donde lo dejaste en un momento dado, pero no es el caso. Dile que no.
Como has visto, todo funciona perfectamente, pero resulta lioso debido a que R es un lenguaje interpretado, es decir, un lenguaje de programación que cada vez que se escribe una orden y se pulsa intro
se ejecuta y ofrece el resultado inmediatamente. Es lo que has estado haciendo todo este rato. Para evitar esta situación es por lo que usarás RStudio, que te hará la vida mucho más fácil.
1.5 RStudio
Ya no vas usar R nunca más, tan solo RStudio. R es el motor que hace funcionar todo el sistema y estará siempre por debajo de RStudio.
Para comenzar, arranca RStudio. Deberá aparecer una pantalla semejante a la de la figura 1.2, aunque lo que diga será diferente (yo tengo la versión 3.5.0 instalada, tú tendrás la 3.6.1 u otra superior).
Como puedes ver, hay tres paneles (en realidad tiene que haber cuatro, ya llegaremos al cuarto). El más grande (en la imagen) es el de la consola. Si miras en la parte superior del panel, verás que dice Console
. No te voy a contar cómo funciona porque lo que hace es replicar la consola que has estado usando en la sección anterior y ya sabes cómo operar con ella. Tan solo un truco: si alguna vez la tienes llena de cosas y quieres limpiarla, pulsa a la vez control
y L
, o, si lo prefieres, usa la escoba que hay parte derecha del margen superior.
1.5.1 Ventana Environment
En la pestaña Environment
(figura 1.3) irán apareciendo los valores de las asignaciones y de los objetos que se vayan creando y ejecutando. Si escribes en la consola x <- 10
, y <- 6
y pulsas intro
cada vez que hayas tecleado la expresión, verás que en Environment
aparecen los mismos valores. Introdúcelos en la consola y observa lo que aparece en la ventana Environment
. Te servirá para seguirle la pista a todo lo que vayas haciendo.
1.5.2 Ventana History
En la pestaña History
tendrás el historial de todo lo que has hecho. Puede parecer una tontería, pero es útil porque puede servir para no tener que teclear toda una línea de código de nuevo. Haz clic en ella. No habrá nada si es la primera vez que usas RStudio y no has ejecutado ninguna línea de código en la consola. Pero como habrás ejecutado las dos órdenes que te indiqué en el párrafo anterior, en la ventana History
aparecerá lo mismo que en la imagen de la figura 1.4.
1.5.3 Ventana Files
/ Plots
/ Packages
/ Help
/ View
Esta ventana es la que más posibilidades ofrece:
Files
es el navegador dentro del sistema de ficheros del ordenador. Muy útil.Plots
es donde aparecerán los gráficos que puedas generar.Packages
informa de los paquetes disponibles en el sistema (ya instalados).Help
es donde se puede acceder a la ayuda del sistema R; allí encontrarás toda la información que te permitirá sacar el máximo partido a cualquiera de los paquetes instalados. A veces asusta, pero ahí está todo.Viewer
será en donde aparecerán los mapas y otros elementos que sean resultado de las instrucciones que ejecutes y que no sean gráficos.
1.5.4 Ventana Editor
(Source
)
Hay una cuarta ventana que solo se abre si se le indica. Es el Editor de RStudio. Es mucho más flexible que escribir en la consola puesto que permite ir hacia atrás y hacia adelante, resalta los diversos componentes de una orden o expresión en colores, permite guardar un script para volverlo a usar y corregir los errores sin tener volver a escribir todo. La forma de abrirlo es muy sencilla. Situa el ratón en el menú superior de RStudio, selecciona, sucesivamente File > New File > R Script
. Se habrá abierto una ventana nueva encima del panel Console
. Ese es el Editor de RStudio. Puedes verlo en la imagen de la figura 1.5. Sin nada escrito.
Otra forma de abrir el editor es haciendo clic en el cuadradito con un signo más que hay en la parte superior izquierda del panel del Editor, está indicado con una flecha roja en la figura 1.6. Una vez que hagas clic, se abrirá un menú desplegable. Una vez abierto, sitúa el cursor sobre RScript
y haz clic. Se abrirá el editor.
Como te acabo de decir, en el editor puedes escribir con toda tranquilidad los scripts que desarrolles, pero tiene un comportamiento ligeramente diferente a cuando escribes las órdenes en la consola. En esta basta con que pulses intro
para que se ejecuten. En el editor de RStudio si das un intro
tan solo cambias de línea y no se ejecuta nada, por el simple hecho de que estás en el editor. Para que se ejecute la orden tienes dos posibilidades:
- Pulsar a la vez
control
eintro
(cmd
eintro
en MacOS) - Hacer clic en el cuadradito que que hay en el marco superior de la ventana del editor y que dice
→Run
(lo tienes señalado con una flecha en la imagen de la figura 1.7).
Tan pronto como pulses de una otra manera, se ejecutará la orden y pasará a la línea siguiente, pero la nueva línea a la que pase no se ejecutará hasta que tú se lo pidas.
Ya tienes un primer acercamiento a R y el entorno en el que vas a trabajar, pero antes de finalizar quiero recordarte que la ayuda está muy cerca, a un clic de distancia. En el panel de abajo a la derecha, tienes una pestaña que dice Help
(figura 1.8). En la parte derecha hay una casilla con una lupa. Ahí puedes buscar la ayuda acerca de la función sobre la que dudas o quieres saber más.
>
. Ya no lo volveré a usar ni mencionar porque escribirás o copiarás los bloques de código en el editor de RStudio, en el que no existe, o te indicaré que lo escribas en la consola, y como te digo expresamente en la consola, no necesito anteponer el símbolo del sistema a la función u objeto que quiero que proceses.