Semana 1: Introducción a R, RStudio y Quarto

Primeros pasos en el análisis de datos en ciencias de la salud

Author

Agoralab

Published

Invalid Date

Introducción a R, RStudio y Quarto

Bienvenida al programa

Bienvenidos al programa semestral de Análisis de Datos con R para Ciencias de la Salud. Durante las próximas 14 semanas, desarrollaremos habilidades prácticas para analizar datos en investigación en salud utilizando R como herramienta principal.

Este programa está diseñado específicamente para estudiantes de doctorado e investigadores en ciencias de la salud, con un enfoque práctico y aplicaciones concretas en el campo.

Tip

No se requiere experiencia previa en programación para seguir este curso. Comenzaremos desde lo más básico y progresaremos gradualmente.

Objetivos de la sesión

Al finalizar esta primera sesión, serás capaz de:

  1. Comprender qué es R y por qué es útil en ciencias de la salud
  2. Instalar y configurar correctamente R, RStudio y Quarto
  3. Familiarizarte con la interfaz de RStudio
  4. Ejecutar comandos básicos en la consola de R
  5. Crear un primer documento Quarto que combine texto y código
  6. Entender el concepto de “programación literaria” (literate programming)

¿Qué es R y por qué usarlo en investigación en salud?

R es un lenguaje de programación y entorno para análisis estadístico y visualización de datos. Algunas razones por las que R es ideal para investigación en salud:

  • Software libre y de código abierto: No hay costos de licencia
  • Comunidad activa: Miles de paquetes específicos para ciencias de la salud
  • Reproducibilidad: Permite documentar cada paso del análisis
  • Flexibilidad: Desde estadísticas básicas hasta análisis genómicos complejos
  • Visualización: Capacidades avanzadas de visualización de datos
  • Integración: Con otros sistemas y tecnologías (bases de datos, sistemas de ML, etc.)

R se ha convertido en una herramienta esencial en epidemiología, ensayos clínicos, análisis de datos genómicos, meta-análisis y muchas otras áreas de investigación en salud.

Diferencias entre R y otros softwares estadísticos

A diferencia de paquetes comerciales como SPSS o SAS, R requiere escribir código en lugar de usar interfaces gráficas. Aunque la curva de aprendizaje inicial puede ser más pronunciada, la capacidad de script ofrece mayor reproducibilidad y automatización. Además, R no tiene costos de licencia, lo que permite a cualquier investigador replicar tus análisis sin barreras económicas.

Instalación y configuración

Instalación de R

R es el motor de cálculo estadístico. Para instalar R:

  1. Visita CRAN
  2. Selecciona tu sistema operativo (Windows, Mac o Linux)
  3. Sigue las instrucciones de instalación

Instalación de RStudio

RStudio es un entorno de desarrollo integrado (IDE) que facilita el uso de R. Para instalar RStudio:

  1. Visita Posit
  2. Descarga la versión gratuita de RStudio Desktop
  3. Instala siguiendo las instrucciones

Instalación de Quarto

Quarto es un sistema para crear documentos técnicos y científicos que combinan texto, código y resultados. Para instalar Quarto:

  1. Visita Quarto
  2. Descarga la versión para tu sistema operativo
  3. Sigue las instrucciones de instalación
Note

Las versiones más recientes de RStudio (2022.07 o superior) ya incluyen Quarto integrado, así que es posible que no necesites instalarlo por separado.

La diferencia entre R, RStudio y Quarto

Para entender mejor estos componentes, puedes pensar en esta analogía: - R es como el motor de un coche - realiza todos los cálculos y el trabajo pesado. - RStudio es como el tablero y los controles - proporciona una interfaz amigable para manejar R. - Quarto es como una guía de viaje - te permite documentar tu recorrido combinando explicaciones, mapas (visualizaciones) y detalles de cada parada (análisis).

La interfaz de RStudio

RStudio tiene cuatro paneles principales:

  1. Editor de código (superior izquierda): Donde escribes y editas scripts de R
  2. Consola (inferior izquierda): Donde se ejecuta el código y se muestran los resultados
  3. Entorno/Historial (superior derecha): Muestra las variables y objetos en memoria
  4. Archivos/Gráficos/Ayuda/Paquetes (inferior derecha): Múltiples funciones como navegación de archivos, visualización de gráficos, documentación y gestión de paquetes

Interfaz de RStudio

Primeros pasos en R

La consola de R

La consola de R es donde podemos ejecutar comandos directamente. Probemos algunos comandos básicos:

Code
# Esto es un comentario en R (las líneas que comienzan con # no se ejecutan)

# R como calculadora
2 + 3  # Suma
[1] 5
Code
10 / 2  # División
[1] 5
Code
3 * 4  # Multiplicación
[1] 12
Code
2^3  # Potencia (2 elevado a 3)
[1] 8
Code
# Crear variables usando el operador de asignación (<-)
mi_numero <- 42
mi_numero
[1] 42
Code
# Crear un vector (colección de valores)
edades <- c(25, 30, 35, 40, 45)
edades
[1] 25 30 35 40 45
Code
# Calcular estadísticas básicas
mean(edades)  # Media
[1] 35
Code
median(edades)  # Mediana
[1] 35
Code
sd(edades)  # Desviación estándar
[1] 7.905694
Sobre el operador de asignación

En R, el operador principal de asignación es <- en lugar de = (aunque este último también funciona). Se recomienda usar <- por convención y claridad, ya que = también se usa para asignar valores a argumentos en funciones.

# Recomendado
x <- 10

# No es incorrecto, pero menos preferido en el estilo de código R
x = 10

Tipos de datos básicos en R

R tiene varios tipos de datos fundamentales. Aquí algunos ejemplos:

Code
# Numérico
peso <- 68.5
class(peso)
[1] "numeric"
Code
# Carácter (texto)
nombre <- "Paciente"
class(nombre)
[1] "character"
Code
# Lógico (TRUE/FALSE)
tiene_diabetes <- FALSE
class(tiene_diabetes)
[1] "logical"
Code
# Vector (todos los elementos del mismo tipo)
presion_sistolica <- c(120, 135, 142, 118, 125)
class(presion_sistolica)
[1] "numeric"
Code
# Factor (variable categórica)
sexo <- factor(c("M", "F", "F", "M", "F"))
class(sexo)
[1] "factor"
Code
levels(sexo)  # Niveles/categorías
[1] "F" "M"

Introducción a Quarto

¿Qué es Quarto?

Quarto es un sistema de publicación científica y técnica de código abierto basado en Pandoc. Permite crear documentos dinámicos que combinan:

  • Texto narrativo (con formato Markdown)
  • Código R (u otros lenguajes)
  • Resultados de la ejecución del código (tablas, gráficos, etc.)
  • Ecuaciones matemáticas
  • Citas y referencias bibliográficas
¿Por qué usar Quarto en lugar de Word para informes científicos?

Los documentos Quarto ofrecen varias ventajas sobre los procesadores de texto tradicionales para la investigación:

  1. Reproducibilidad: El análisis y los resultados se generan directamente del código, evitando errores de transcripción.
  2. Actualización automática: Si los datos cambian, solo necesitas volver a renderizar el documento para actualizar todos los análisis y figuras.
  3. Control de versiones: Al ser archivos de texto plano, se pueden gestionar fácilmente con sistemas como Git.
  4. Múltiples formatos de salida: El mismo documento puede convertirse a HTML, PDF, Word, presentaciones, etc.

El concepto de “programación literaria”

La programación literaria (literate programming) es un enfoque donde combinamos:

  • Narrativa - explicación en lenguaje natural
  • Código - instrucciones para el ordenador

Esto permite:

  1. Documentar el proceso de análisis paso a paso
  2. Explicar la lógica y decisiones tomadas
  3. Presentar los resultados de forma clara
  4. Facilitar la reproducibilidad de la investigación

Estructura de un documento Quarto

Un documento Quarto (.qmd) tiene tres componentes principales:

  1. YAML Header: Metadatos al inicio del documento
  2. Texto narrativo: Explicaciones, interpretaciones (en formato Markdown)
  3. Bloques de código: Fragmentos de código R que se pueden ejecutar
¿Qué es YAML?

YAML (YAML Ain’t Markup Language) es un formato de serialización de datos legible por humanos. En Quarto, el encabezado YAML se usa para definir metadatos y opciones de configuración del documento. Se coloca al principio del archivo, delimitado por tres guiones --- al inicio y al final.

Veamos un ejemplo simplificado:

---
title: "Análisis de datos de pacientes"
author: "Investigador"
date: "2025-03-05"
---

# Introducción

Este análisis examina datos de pacientes con hipertensión.

## Carga de datos

Primero, cargamos los datos:

```{r}
# Crear datos de ejemplo
pacientes <- data.frame(
  id = 1:5,
  edad = c(45, 52, 67, 38, 71),
  presion_sistolica = c(120, 135, 142, 118, 155)
)

# Mostrar los datos
pacientes

Análisis descriptivo

Calculamos estadísticas básicas:

```{r}
# Media y desviación estándar de la presión
mean(pacientes$presion_sistolica)
sd(pacientes$presion_sistolica)
```

### Creando nuestro primer documento Quarto

Ahora crearemos nuestro primer documento Quarto:

1. En RStudio, ve a File → New File → Quarto Document
2. Completa los detalles básicos (título, autor)
3. Elige formato HTML y haz clic en "Create"

Se creará un documento plantilla que puedes modificar. Para renderizar (compilar) el documento:

- Haz clic en el botón "Render" en la barra de herramientas
- Usa el atajo de teclado Ctrl+Shift+K (Windows/Linux) o Cmd+Shift+K (Mac)

::: {.callout-warning}
## Errores comunes al comenzar con Quarto

Si al renderizar tu documento encuentras errores, verifica:

1. **Sintaxis del YAML**: El formato debe ser preciso, con la indentación correcta.
2. **Comillas en texto**: Si tu texto narrativo incluye comillas, asegúrate de que estén balanceadas.
3. **Bloques de código**: Verifica que tus bloques de código R estén correctamente definidos con tres backticks y la especificación `{r}`.
4. **Paquetes faltantes**: Si tu código usa paquetes que no has instalado, los necesitarás para renderizar el documento.
:::

## Ejercicio práctico

Vamos a crear un pequeño documento Quarto que incluya:

1. Una breve introducción personal
2. Tu formación y área de interés en ciencias de la salud
3. Un ejemplo simple de código R que calcule alguna estadística básica

### Plantilla para el ejercicio

Puedes usar esta plantilla como punto de partida:

```markdown
---
title: "Mi primer documento Quarto"
author: "Tu Nombre"
date: "2025-03-05"
format: html
---

## Sobre mí

[Escribe una breve introducción sobre ti]

## Mi formación y área de interés

[Describe tu formación académica y área de interés en ciencias de la salud]

## Mi primer análisis con R

A continuación, un pequeño análisis de datos:

```{r}
# Crear datos de ejemplo (puedes modificar estos valores)
edades <- c(25, 30, 35, 40, 45, 50, 55)

# Calcular estadísticas básicas
media_edad <- mean(edades)
mediana_edad <- median(edades)
desv_std <- sd(edades)

# Mostrar resultados
cat("Media de edad:", media_edad, "\n")
cat("Mediana de edad:", mediana_edad, "\n")
cat("Desviación estándar:", desv_std, "\n")

Reflexión

[Comparte tus expectativas sobre este curso y cómo crees que R puede ayudarte en tu investigación]


## Recursos adicionales

Para profundizar en los temas vistos hoy:

- [R for Data Science](https://r4ds.had.co.nz/) - Libro fundamental para aprender R moderno
- [Documentación oficial de Quarto](https://quarto.org/docs/guide/) - Guía completa de Quarto
- [RStudio Cheatsheets](https://www.rstudio.com/resources/cheatsheets/) - Hojas de referencia rápida
- [R para Ciencia de Datos](https://es.r4ds.hadley.nz/) - Versión en español del libro R for Data Science

## Para la próxima sesión

En la próxima sesión profundizaremos en los tipos de datos y estructuras fundamentales en R:
- Vectores, matrices y data frames
- Operaciones básicas y funciones
- Indexación y selección de elementos

Prepárate instalando los siguientes paquetes:

::: {.cell}

```{.r .cell-code}
install.packages(c("tidyverse", "here", "rmarkdown"))

:::

Conclusiones

En esta primera sesión hemos:

  • Comprendido la importancia de R en investigación en salud
  • Configurado nuestro entorno de trabajo
  • Explorado la interfaz de RStudio
  • Ejecutado nuestros primeros comandos en R
  • Creado un documento Quarto básico
  • Entendido el concepto de programación literaria

Estamos listos para adentrarnos en el análisis de datos con R aplicado a ciencias de la salud. ¡Nos vemos en la próxima sesión!