Ciencia de Datos: Análisis de Datos con R
Programa del curso — 6 sesiones × 2 horas
1 Información general
| Modalidad | Virtual (sincrónica) |
| Fechas | Martes y jueves 2,4, 9,11, 16, 18 de junio 2026 |
| Horario | 17.00 a 19.00 |
| Duración | 6 sesiones × 2 horas |
| Plataforma | Zoom |
| Instructor | Manuel Spínola (mspinola@una.cr) |
| Contacto | Yoselyn Díaz (asistentecontableicomvis@una.ac.cr) |
| Inversión | $102,00 |
2 Descripción general
Este curso cubre los fundamentos del análisis de datos con R, con énfasis en modelos estadísticos y la estimación de efectos e intervalos de confianza como base para la inferencia, en lugar del enfoque tradicional centrado en valores p. A lo largo de 6 sesiones de 2 horas, los participantes aprenderán a explorar, modelar, interpretar y comunicar resultados estadísticos, desde la estadística descriptiva, modelos lineales generales y generalizados, modelos aditivos generalizados y una introducción al machine learning (aprendizaje automático).
3 Objetivos del curso
Al finalizar el curso, los participantes serán capaces de:
- Describir y visualizar distribuciones de datos
- Estimar correlaciones e interpretar su magnitud e incertidumbre
- Ajustar e interpretar modelos lineales generales y generalizados
- Aplicar modelos aditivos generalizados (GAM) para relaciones no lineales
- Construir y evaluar modelos de machine learning
- Comunicar resultados estadísticos con énfasis en estimación usando
easystats
4 Enfoque estadístico
Este curso adopta un enfoque basado en estimación en lugar de la dicotomía significativo/no significativo. El énfasis está en:
- Tamaños de efecto — ¿qué tan grande es el efecto?
- Intervalos de confianza — ¿cuál es la incertidumbre de la estimación?
- Relevancia práctica — ¿el efecto es biológicamente o prácticamente importante?
El paquete easystats sirve como hilo conductor para la estimación, reporte e interpretación de modelos a lo largo del curso.
5 Estructura del curso
| Sesión | Tema |
|---|---|
| 1 | Estadística descriptiva y distribuciones |
| 2 | Correlaciones e intervalos de confianza |
| 3 | Regresión lineal simple y múltiple |
| 4 | Modelos lineales generalizados (GLM) |
| 5 | Modelos aditivos generalizados (GAM) |
| 6 | Introducción a Machine Learning |
6 Sesión 1 — Estadística descriptiva y distribuciones
Duración: 2 horas
Objetivos:
- Calcular e interpretar estadísticos descriptivos
- Visualizar distribuciones y detectar patrones
- Identificar la distribución adecuada para distintos tipos de datos
Contenidos:
- Estadísticos de tendencia central: media, mediana, moda
- Estadísticos de dispersión: desviación estándar, IQR, rango
- Visualización de distribuciones: histogramas, densidades, boxplots, violines
- Distribuciones comunes y sus aplicaciones:
- Normal — variables continuas simétricas
- Binomial — datos de presencia/ausencia
- Poisson — conteos
- Beta — proporciones
- Detección de valores atípicos
- Reporte descriptivo
easystats::describe_distribution()
Paquetes introducidos: easystats
Ejercicio práctico: Explorar la distribución de variables bioclimáticas y de riqueza de especies, identificar la distribución más adecuada para cada una y calcular estadísticos descriptivos con easystats.
7 Sesión 2 — Correlaciones e intervalos de confianza
Duración: 2 horas
Objetivos:
- Estimar correlaciones entre variables continuas
- Interpretar la magnitud de una correlación con intervalos de confianza
- Visualizar matrices de correlación
Contenidos:
- Correlación de Pearson y Spearman: cuándo usar cada una
- Estimación con intervalos de confianza:
correlation::correlation() - Interpretación de la magnitud: convenciones de Cohen
- Visualización de matrices de correlación
- Multicolinealidad: detección con VIF
Paquetes introducidos: correlation
Ejercicio práctico: Calcular una matriz de correlación entre variables predictoras con intervalos de confianza, visualizarla e identificar variables con alta multicolinealidad.
8 Sesión 3 — Regresión lineal simple y múltiple
Duración: 2 horas
Objetivos:
- Ajustar e interpretar modelos de regresión lineal
- Reportar coeficientes con intervalos de confianza y tamaños de efecto
- Evaluar el ajuste y los supuestos del modelo
Contenidos:
- Regresión lineal simple: ajuste con
lm() - Interpretación de coeficientes como estimaciones de efecto
- Intervalos de confianza con
parameters::model_parameters() - Regresión múltiple: selección y interpretación de predictores
- Comparación de modelos con
performance::compare_performance() - Evaluación del ajuste: R², R² ajustado con
performance::r2() - Diagnóstico de supuestos con
performance::check_model() - Estandarización de coeficientes para comparación:
effectsize - Visualización de efectos con
ggeffects
Paquetes introducidos: parameters, performance, effectsize, ggeffects
Ejercicio práctico: Ajustar un modelo de regresión múltiple y reportar los coeficientes con intervalos de confianza y evaluar los supuestos del modelo.
9 Sesión 4 — Modelos lineales generalizados (GLM)
Duración: 2 horas
Objetivos:
- Comprender la estructura de un GLM y cuándo usarlo
- Ajustar modelos para datos de presencia/ausencia y conteos
- Interpretar coeficientes en escala original
Contenidos:
- Estructura de un GLM: familia, función de enlace y predictor lineal
- GLM binomial (logístico): datos de presencia/ausencia
- Ajuste con
glm(family = binomial) - Interpretación de coeficientes en escala logit y probabilidad
- Odds ratios e intervalos de confianza
- Ajuste con
- GLM Poisson: datos de conteo
- Ajuste con
glm(family = poisson) - Sobredispersión: detección y solución con
glm(family = quasipoisson)
- Ajuste con
- Evaluación del ajuste: devianza, AIC,
performance::check_model() - Reporte de resultados con
parameters::model_parameters(exponentiate = TRUE) - Visualización de efectos marginales con
ggeffects
Paquetes introducidos: ggeffects
Ejercicio práctico: Ajustar un modelo logístico e interpretar los coeficientes como cambios en probabilidad y visualizar los efectos marginales.
10 Sesión 5 — Modelos aditivos generalizados (GAM)
Duración: 2 horas
Objetivos:
- Comprender cuándo y por qué usar GAM en lugar de GLM
- Ajustar GAM con términos suavizados
- Interpretar y visualizar relaciones no lineales
Contenidos:
- Limitaciones del GLM: relaciones no lineales en ecología
- Estructura de un GAM: términos suavizados
s() - Tipos de suavizadores: thin plate (
tp), shrinkage (ts) - Ajuste con
mgcv::gam() - Selección automática con
select = TRUE - Interpretación de grados de libertad efectivos (edf)
- Evaluación del ajuste: devianza explicada, R² ajustado
- Visualización de efectos suavizados con
gratiayggeffects
Paquetes introducidos: mgcv, gratia
Ejercicio práctico: Ajustar un GAM y compararlo con un GLM equivalente y visualizar la relación no lineal estimada.
11 Sesión 6 — Introducción a Machine Learning con Random Forest
Duración: 2 horas
Objetivos:
- Comprender la lógica del aprendizaje automático supervisado
- Ajustar y evaluar un modelo de Random Forest con
tidymodels - Interpretar la importancia de variables
Contenidos:
- Aprendizaje automático supervisado vs análisis estadístico: diferencias y usos
- Árboles de decisión: fundamentos
- Random Forest: ensamblaje de árboles y reducción de varianza
- Flujo de trabajo con
tidymodels:- División de datos:
initial_split() - Receta:
recipe() - Especificación del modelo:
rand_forest()conranger - Workflow:
workflow() - Validación cruzada:
vfold_cv()
- División de datos:
- Métricas de evaluación: AUC-ROC, accuracy, RMSE
- Importancia de variables con
vip - Comparación con GLM: ¿cuándo usar cada enfoque?
Paquetes introducidos: tidymodels, ranger, vip
Proyecto integrador: Cada participante ajusta un modelo estadístico (GLM, GAM o Random Forest) a un conjunto de datos de su elección, reporta los resultados con énfasis en estimación e intervalos de confianza, y genera un reporte reproducible en Quarto.
12 Requisitos
- Computadora personal con última versión de R y RStudio instalados
12.1 Instalación de paquetes
install.packages(c(
"tidyverse",
"easystats",
"correlation",
"ggeffects",
"mgcv",
"gratia",
"tidymodels",
"ranger",
"vip",
"here"
))13 Referencias
Burnham, K.P. & Anderson, D.R. (2002). Model Selection and Multimodel Inference (2nd ed.). Springer.
Hastie, T., Tibshirani, R. & Friedman, J. (2009). The Elements of Statistical Learning (2nd ed.). Springer. https://hastie.su.domains/ElemStatLearn/
Lüdecke, D. et al. (2021). easystats: Framework for Easy Statistical Modeling, Visualization, and Reporting. CRAN. https://easystats.github.io/easystats/
Kuhn, M. & Wickham, H. (2020). Tidymodels: a collection of packages for modeling and machine learning using tidyverse principles. https://www.tidymodels.org
Wood, S.N. (2017). Generalized Additive Models: An Introduction with R (2nd ed.). CRC Press.
Wickham, H., Çetinkaya-Rundel, M. & Grolemund, G. (2023). R for Data Science (2nd ed.). O’Reilly. https://r4ds.hadley.nz