1 R y RStudio
1.1 ¿Qué es R?

R es un lenguaje de programación y un entorno de desarrollo orientado al análisis estadístico y la visualización de datos. Su amplia adopción en ámbitos académicos, científicos y profesionales se explica por su flexibilidad, su carácter de software libre y la extensa disponibilidad de paquetes desarrollados por la comunidad, los cuales permiten implementar una gran diversidad de métodos estadísticos y enfoques de modelado. Además, R ofrece herramientas para la manipulación, exploración y visualización de datos, así como para la comunicación de resultados mediante informes dinámicos, lo que favorece la reproducibilidad y la transparencia en el análisis de datos.
1.2 ¿Qué es RStudio?

RStudio es un entorno de desarrollo integrado (IDE) diseñado para trabajar con el lenguaje de programación R. Proporciona una interfaz de usuario intuitiva y un conjunto de herramientas que facilitan la escritura, organización y ejecución de código, así como la visualización de datos, la depuración y la gestión de proyectos. Además, integra en una misma interfaz diferentes componentes —como el editor de scripts, la consola, el entorno de trabajo y los paneles de visualización—, lo que favorece un flujo de trabajo más eficiente en el análisis de datos.
Es importante comprender que R y RStudio no son lo mismo, sino herramientas complementarias. En este sentido, los autores del libro ModernDive (2020) proponen una analogía que resulta útil para comprender la relación entre ambos. Tal como se ilustra en la Figura 1.1, en su forma más simple, R es como el motor de un automóvil, mientras que RStudio es como el tablero de instrumentos. Esta comparación permite destacar que R constituye el núcleo donde se ejecutan los cálculos, mientras que RStudio proporciona las herramientas necesarias para interactuar con dicho motor de manera accesible y organizada.
Figura 1.1: Analogía entre R y RStudio (Motor vs. Tablero).
1.3 Instalación local de R y RStudio
Para comenzar a trabajar con estos softwares de forma local en su computadora, es necesario instalar tanto R como RStudio en su versión de escritorio (RStudio Desktop). Ambos pueden descargarse desde el sitio oficial de Posit:
Al acceder al sitio, se visualizará la página principal de la plataforma, la cual se muestra en la Figura 1.2:
Figura 1.2: Página principal del sitio oficial de Posit.
En la parte superior de la pantalla, deberá seleccionar la pestaña FREE & OPEN SOURCE (gratuito y de código abierto). A continuación, tal como se indica en la Figura 1.3, deberá hacer clic en la opción DOWNLOAD RSTUDIO (descargar RStudio).
Figura 1.3: Selección de la opción Download RStudio dentro de la pestaña Free & Open Source.
Posteriormente se mostrará una nueva ventana de confirmación, detallada en la Figura 1.4, en la que nuevamente deberá seleccionar la opción DOWNLOAD RSTUDIO.
Figura 1.4: Pantalla de confirmación para la descarga de RStudio.
Finalmente, se presentarán los dos pasos fundamentales de instalación que se observan en la Figura 1.5. Primero, deberá descargar e instalar el software R (1: Install R) y, una vez completado, regresar a la página para instalar RStudio (2: Install RStudio).
Figura 1.5: Pasos para la instalación de R y RStudio desde la página oficial.
1.4 Entorno de trabajo
RStudio presenta cuatro paneles principales que estructuran y facilitan el flujo de trabajo, los cuales se encuentran identificados en la Figura 1.6.
Figura 1.6: Paneles principales de la interfaz de RStudio.
Estos paneles son:
Ventana 1: Editor de sintaxis (scripts). Este panel proporciona un espacio de trabajo donde los usuarios pueden escribir, editar y ejecutar código en R. Resulta fundamental para la creación y modificación de programas, el análisis de datos y el desarrollo de algoritmos. Además, incluye funcionalidades como resaltado de sintaxis, autocompletado y sugerencias contextuales que contribuyen a mejorar la eficiencia y precisión en la codificación.
Ventana 2: Consola de R. La consola es el entorno de ejecución donde se procesan y muestran los resultados de los comandos introducidos por el usuario. Permite interactuar directamente con R, facilitando la evaluación de expresiones, la visualización de resultados y la exploración de objetos y funciones. Asimismo, en la consola se informan mensajes, advertencias y errores asociados a la ejecución del código, lo que resulta fundamental para la detección y corrección de problemas.
Ventana 3: Panel de entorno e historial. Este panel brinda información sobre el entorno de trabajo actual, incluyendo los objetos creados (como vectores, matrices, data frames), así como el historial de comandos previamente ejecutados. Proporciona una visión general de la sesión activa, lo que facilita la gestión y exploración de datos y procesos realizados.
Ventana 4: Panel de Archivos, Gráficos, Paquetes, Ayuda y Visor. Este panel permite acceder a diversas herramientas complementarias. Incluye la navegación y gestión de archivos, la visualización de gráficos generados, la administración de paquetes y el acceso al sistema de ayuda de R. Asimismo, incorpora un visor que facilita la visualización de contenidos como documentos HTML o aplicaciones interactivas.
En conjunto, estos paneles conforman un entorno integrado que facilita la escritura y ejecución de código, la exploración de datos y la comunicación de resultados, contribuyendo a mejorar la eficiencia y organización del trabajo en R.
1.5 Scripts
Los scripts son archivos de texto que contienen una secuencia de instrucciones o comandos que se ejecutan en el entorno de R. Estas instrucciones pueden incluir la manipulación de datos, la aplicación de métodos estadísticos, la generación de visualizaciones y la definición y utilización de funciones.
El uso de scripts permite organizar el trabajo, reutilizar código y favorecer la reproducibilidad de los análisis, ya que todas las operaciones quedan registradas de manera explícita.
1.6 Objetos
Son estructuras de datos que almacenan información y resultados generados durante el proceso de análisis. Pueden contener datos simples, como números o texto, así como estructuras más complejas, como vectores, matrices, data frames (set de datos) o listas. Actúan como contenedores que permiten almacenar, manipular y acceder a la información de manera eficiente.
El uso de objetos proporciona una forma organizada de trabajar con los datos, facilitando la realización de operaciones estadísticas, cálculos matemáticos y la generación de gráficos. Asimismo, contribuye a la coherencia y reproducibilidad del análisis, aspectos fundamentales en contextos académicos y científicos.
Desde una perspectiva didáctica, puede pensarse a los objetos como “cajas” donde se almacena información. Por ejemplo, es posible guardar datos sobre la temperatura del suelo, la humedad del aire o el rendimiento de cultivos en distintos objetos, lo que permite posteriormente realizar cálculos, generar visualizaciones y obtener conclusiones a partir de dichos datos.
Para crear un objeto en R se utiliza el operador de asignación “<-”, que permite almacenar un valor o resultado con un nombre determinado. Por ejemplo, el código x <- 5 asigna el valor 5 al objeto denominado x. Esto posibilita reutilizar dicho valor en operaciones posteriores.
Veamos un ejemplo: Vamos a suponer que hemos evaluado y registrado el rendimiento (en kg/ha) de cinco parcelas experimentales al momento de la cosecha. Para facilitar el análisis, vamos a agrupar y almacenar todos esos valores dentro de un único objeto llamado RENDIMIENTO y luego calcularemos su promedio general.
# Creamos un objeto llamado RENDIMIENTO que almacena los valores de rendimiento (kg/ha) de cinco parcelas experimentales
RENDIMIENTO <- c(3500, 4200, 3800, 4100, 3950)
# Calculamos el rendimiento promedio con la función mean()
mean(RENDIMIENTO)Se recomienda utilizar nombres significativos para los objetos, ya que esto facilita la lectura e interpretación del código. Asimismo, es una buena práctica revisar el panel Environment, ubicado en la Ventana 3 de RStudio, para identificar los objetos creados y el tipo de información que contienen.
1.7 Funciones y argumentos
Las funciones en R son estructuras de código que permiten ejecutar una tarea específica al ser llamadas o invocadas. Constituyen un elemento central del lenguaje, ya que permiten realizar operaciones, manipular datos y aplicar métodos estadísticos de manera eficiente y estructurada.
En términos generales, una función puede recibir valores de entrada, denominados argumentos, procesarlos mediante una serie de instrucciones y devolver un resultado como salida.
Las funciones en R presentan los siguientes elementos fundamentales:
Nombre de la función: identifica a la función y se utiliza para invocarla. Si bien no es una regla estricta, por convención muchos nombres de funciones se escriben en minúsculas.
Paréntesis: indican la llamada a la función y contienen los argumentos que esta puede recibir.
Argumentos: son los valores que se proporcionan a la función para que lleve a cabo su tarea. Pueden ser obligatorios u opcionales, y en muchos casos poseen valores predeterminados.
De manera general, la estructura de una función en R puede representarse como:
nombre_de_la_funcion(argumento1, argumento2, ...)
Veamos un ejemplo: Imaginemos que tenemos un registro de alturas de plantas en centímetros, pero en una de las observaciones no pudimos recolectar el dato (lo cual en R se representa con el valor NA, Not Available).
# Objeto con 4 datos reales y un dato faltante
ALTURA <- c(45, 50, NA, 48, 52)
# Usamos la función mean() agregando el argumento opcional na.rm = TRUE
mean(x = ALTURA, na.rm = TRUE)En este caso, mean es el nombre de la función, el argumento x = ALTURA le indica a R sobre qué objeto debe realizar el cálculo matemático, y el argumento secundario na.rm = TRUE (NA remove) le da la orden específica de que remueva o ignore los datos faltantes antes de calcular el promedio.
1.8 Paquetes
Los paquetes (packages o librerías) son colecciones organizadas de funciones, conjuntos de datos y documentación que extienden la funcionalidad del lenguaje R. Estos son desarrollados y mantenidos tanto por la comunidad de usuarios como por instituciones especializadas en estadística y ciencia de datos.
Los paquetes abarcan una amplia variedad de aplicaciones, incluyendo herramientas para realizar análisis estadísticos, manipular datos y generar visualizaciones. Asimismo, suelen incorporar conjuntos de datos de ejemplo y documentación detallada que facilita la comprensión y uso de las funciones disponibles.
La instalación y uso de paquetes permite ampliar significativamente las capacidades de R, adaptándolo a diferentes necesidades de análisis en contextos académicos, profesionales y de investigación.
1.8.1 Instalación de paquetes
Los paquetes pueden instalarse de distintas maneras. Una de las más habituales es mediante la función:
También es posible instalarlos y administrarlos desde la pestaña Packages, como se visualiza en la Figura 1.7.
Figura 1.7: Pestaña Packages en el panel inferior derecho de RStudio.
1.9 Carga de paquetes
Una vez instalado un paquete, es necesario cargarlo para poder utilizar sus funciones. Esto se realiza mediante el comando:
Es importante notar que, a diferencia de la instalación, en este caso el nombre del paquete no se escribe entre comillas.
Una vez cargado, las funciones del paquete quedan disponibles para su uso durante la sesión de trabajo.
1.10 ¿Qué es CRAN?
CRAN (Comprehensive R Archive Network) es el repositorio oficial del lenguaje R, donde se alojan y distribuyen tanto el software R como los paquetes, la documentación y otros recursos asociados.
Este repositorio es mantenido por una red internacional de servidores y por la comunidad de R, y contiene miles de paquetes desarrollados por usuarios, investigadores y organizaciones de todo el mundo, abarcando una amplia variedad de disciplinas científicas y técnicas.
Además de los paquetes, CRAN proporciona:
Las versiones oficiales del software R para distintos sistemas operativos.
Documentación técnica y manuales.
Conjuntos de datos de ejemplo.
Información sobre actualizaciones y versiones del sistema.
Es importante señalar que no todos los paquetes de R se encuentran disponibles en CRAN. Existen paquetes que se distribuyen a través de otras plataformas, como repositorios de desarrollo (por ejemplo, GitHub), donde los autores publican versiones en desarrollo o paquetes que aún no han sido incorporados a CRAN.
Cuando se utiliza la función install.packages() en R, el sistema se conecta automáticamente a CRAN para descargar e instalar el paquete solicitado. Antes de ser publicados, los paquetes deben cumplir con ciertos estándares de calidad, lo que contribuye a la confiabilidad del ecosistema de R.
Para acceder al sitio principal de CRAN, puede visitar el siguiente enlace:
CRAN
1.11 Algunos paquetes de interés
A lo largo de este libro se recurrirá a diversos paquetes que amplían las funcionalidades de R y facilitan el análisis de datos en distintos contextos. Estos serán presentados e incorporados progresivamente en los distintos capítulos, acompañando el desarrollo de los contenidos y las etapas del análisis de datos. Algunos de los paquetes que se utilizarán son:
R base: hace referencia al conjunto de funciones y paquetes que se instalan junto con R por defecto. Proporciona herramientas fundamentales para la manipulación de datos, la realización de cálculos estadísticos básicos, la generación de gráficos y la programación. Incluye funcionalidades como operaciones aritméticas, estructuras de datos (vectores, matrices, listas), lectura y escritura de archivos y funciones de control de flujo. Si bien permite realizar análisis básicos, muchas tareas más avanzadas requieren el uso de paquetes adicionales.
readxl: permite importar datos desde archivos de Excel (
.xlsy.xlsx) de manera sencilla y eficiente, preservando la estructura de las hojas de cálculo para su posterior análisis en R.ggplot2: es un paquete ampliamente utilizado para la visualización de datos. Permite construir gráficos de manera flexible mediante la combinación de capas, facilitando la creación de visualizaciones claras, personalizadas y de alta calidad.
En conjunto, estos paquetes permiten abordar distintas etapas del análisis de datos, desde la importación y exploración hasta la visualización y comunicación de resultados.
1.12 Redacción en R
A continuación se presentan algunas recomendaciones para una correcta escritura del código en R:
Las funciones suelen escribirse en minúscula, de acuerdo con las convenciones del lenguaje. En el caso de los objetos, puede ser útil adoptar un criterio consistente de nomenclatura (por ejemplo, uso de mayúsculas, minúsculas o una combinación), ya que esto facilita la lectura del script y permite distinguir visualmente entre funciones y objetos.
No se pueden utilizar espacios en los nombres de los objetos. Por ejemplo, no es válido escribir “ALUMNOS 2024”. En su lugar, se recomienda utilizar el guion bajo (
_) o el punto (.) como separadores. Así, “ALUMNOS_2024” o “ALUMNOS.2024” son nombres válidos.No debe utilizarse el guion medio (
-) para nombrar objetos, ya que este se interpreta como un operador de resta. Por ejemplo, si se escribe “ALUMNOS-2024”, R intentará:Buscar dos objetos: “ALUMNOS” y “2024”.
Realizar la operación de resta entre ellos.
No es posible utilizar símbolos matemáticos en los nombres de los objetos. Se recomienda emplear únicamente letras, números, guiones bajos (
_) y, en algunos casos, el punto (.).Se recomienda evitar el uso de la letra “ñ” en los nombres de objetos, ya que puede generar problemas de codificación en distintos sistemas.
Los nombres de los objetos deben comenzar con una letra o, en algunos casos, con un punto (
.). No pueden comenzar con números ni con el símbolo “#”, ya que este último se utiliza para indicar comentarios en el código. Por ejemplo, “2024_datos” no es un nombre válido, mientras que “datos_2024” sí lo es. Asimismo, si se utiliza un punto como primer carácter, el segundo no puede ser un número (por ejemplo, “.datos” es válido, pero “.2datos” no lo es).Del mismo modo, se desaconseja utilizar tildes en los nombres de objetos.
Importante: Resulta conveniente mantener un criterio de nomenclatura consistente a lo largo del trabajo, ya que esto mejora la legibilidad y comprensión del código.
1.12.1 Algunos errores comunes en la sintaxis
A continuación se presentan algunos errores frecuentes al trabajar con R:
Uso incorrecto de paréntesis, ya sea por exceso de paréntesis de cierre o por falta de los mismos. Es importante que cada paréntesis de apertura tenga su correspondiente paréntesis de cierre.
Diferencias entre mayúsculas y minúsculas. R distingue entre ambas, por lo que
mean(),Mean()oMEAN()son interpretadas como funciones diferentes.Selección incompleta del código al ejecutarlo. Un error frecuente consiste en ejecutar solo una parte de la instrucción. Por ejemplo, en lugar de
mean(VR), seleccionarean(VR). En este caso, R devolverá un error, ya queean()no es una función definida.Uso incorrecto de nombres de objetos o funciones. Esto puede ocurrir cuando se escribe mal el nombre de un objeto previamente creado o de una función existente.
1.13 Proyectos en RStudio
Los proyectos en RStudio permiten organizar todo el trabajo relacionado con un análisis estadístico en un único espacio de trabajo. Un proyecto agrupa archivos de scripts, datos, gráficos y documentos de resultados dentro de una misma estructura de carpetas, lo que facilita la navegación y evita la dispersión de archivos.
El uso de proyectos ofrece varias ventajas. En primer lugar, permite mantener organizado el trabajo, ya que todos los archivos asociados a un análisis se encuentran en una ubicación común. En segundo lugar, facilita la reproducibilidad, dado que RStudio establece automáticamente el directorio de trabajo (working directory) en la carpeta del proyecto, evitando problemas asociados a rutas de archivos.
Además, los proyectos contribuyen a mejorar la gestión de diferentes análisis, ya que es posible trabajar con múltiples proyectos de manera independiente, cada uno con su propio conjunto de datos, scripts y configuraciones. Esto resulta especialmente útil en contextos académicos y de investigación, donde se desarrollan varios trabajos en paralelo.
Desde una perspectiva de buenas prácticas, se recomienda crear un proyecto para cada análisis o investigación a abordar, organizar los archivos en carpetas (por ejemplo, datos, imagenes, scripts, salidas) y mantener una estructura ordenada que facilite la comprensión y reutilización del trabajo.
En conjunto, el uso de proyectos en RStudio promueve un flujo de trabajo organizado, eficiente y reproducible en el análisis de datos.
1.14 Bibliografía
Para ampliar la información, se recomienda consultar: