Recomendaciones metodológicas
Guía experta de recomendaciones metodológicas: exploración, especificación de efectos aleatorios, estructuras de covarianza, selección de modelos, diagnóstico y árbol de decisión.
Datasets: sleepstudy (lme4), Orthodont (nlme), dietox (geepack), datos simulados
Objetivos de aprendizaje
- Detectar la estructura longitudinal/de medidas repetidas de un conjunto de datos y explorarla gráficamente.
- Especificar y justificar la estructura de efectos aleatorios de un modelo mixto.
- Elegir una estructura de covarianza o de correlación de trabajo adecuada al diseño.
- Comparar modelos anidados y no anidados con criterios apropiados (LRT, AIC, BIC, cAIC).
- Diagnosticar el ajuste con residuos, DHARMa y normalidad de los efectos aleatorios.
- Decidir entre LMM, GLMM, GEE, enfoques marginales, GAMM o alternativas no paramétricas según el problema.
1. Detección y tratamiento de datos longitudinales
Antes de ajustar cualquier modelo, conviene confirmar que los datos tienen estructura de medidas repetidas o anidamiento: varias observaciones por sujeto, paciente, clúster o unidad experimental, medidas en el tiempo o bajo condiciones relacionadas. Señales típicas en el conjunto de datos:
- Una columna identificadora de sujeto/cluster (
id,subject,center) que se repite en varias filas. - Una variable de tiempo/ocasión (
visita,día,semana) anidada dentro de cada sujeto. - Más filas que sujetos únicos:
nrow(datos) > length(unique(datos$id)).
Exploración recomendada (siempre antes de modelar):
- Spaghetti plots: una línea por sujeto, para ver heterogeneidad de trayectorias individuales.
- Perfiles medios: la media (± error estándar) por grupo y tiempo, para ver la tendencia poblacional.
- Boxplots por tiempo: para detectar cambios de varianza (heterocedasticidad) a lo largo de las ocasiones.
Desbalance y datos faltantes: en estudios longitudinales es habitual que no
todos los sujetos tengan el mismo número de mediciones (pérdidas de
seguimiento, visitas perdidas). Los modelos mixtos (LMM/GLMM) manejan de forma
natural datos no balanceados y faltantes bajo el supuesto MAR (missing at
random): la probabilidad de faltar puede depender de lo observado, pero no de
lo no observado dado lo observado. Si se sospecha MNAR (la falta depende
de valores no observados, p. ej. pacientes que abandonan porque empeoran),
conviene considerar modelos de selección, modelos de mezcla de patrones, o
análisis de sensibilidad. La imputación múltiple (paquete mice) es una
alternativa cuando se requiere un análisis completo posterior (p. ej. GEE, que
sí asume datos faltantes completamente al azar, MCAR, para mantener
consistencia bajo el esquema de estimación por ecuaciones).
2. Especificación de efectos aleatorios
La estructura de efectos aleatorios traduce la pregunta "¿qué varía entre sujetos?" en componentes del modelo:
- Solo intercepto aleatorio , cada sujeto tiene su propio nivel basal, pero la misma tendencia temporal promedio. Adecuado cuando las trayectorias individuales son aproximadamente paralelas.
- Solo pendiente aleatoria (raro sin intercepto aleatorio), cada sujeto difiere en su tasa de cambio pero comparte el nivel basal; rara vez tiene sentido sustantivo por sí sola.
- Intercepto + pendiente aleatorios
, cada sujeto tiene su propio nivel basal y su propia tendencia temporal.
Pueden especificarse correlacionados (
(1 + tiempo | sujeto), default enlme4) o no correlacionados ((1 | sujeto) + (0 + tiempo | sujeto)). - Anidamiento jerárquico: por ejemplo pacientes dentro de centros
(
(1 | centro/paciente)o equivalente(1 | centro) + (1 | centro:paciente)). - Efectos cruzados (no anidados): por ejemplo evaluadores y pacientes que
no están anidados entre sí (
(1 | paciente) + (1 | evaluador)).
¿Cuándo es necesario un efecto aleatorio adicional? Tres herramientas complementarias:
- LRT (test de razón de verosimilitudes) entre modelos anidados ajustados
por ML (no REML, porque REML no permite comparar efectos fijos
distintos, y para efectos aleatorios el LRT clásico es conservador). Ojo:
cuando la hipótesis nula pone una varianza en el límite del espacio de
parámetros (cero), el estadístico LRT no sigue una estándar —
el p-valor reportado por
anova()es conservador (demasiado grande). - AIC/BIC: menor es mejor; útiles para comparar estructuras de efectos aleatorios no anidadas (p. ej. intercepto+pendiente correlacionados vs. anidamiento jerárquico).
- Inspección visual: si los interceptos/pendientes individuales (BLUPs) estimados muestran variación sustantiva y patrones interpretables, hay evidencia de que el efecto aleatorio aporta.
3. Selección de estructuras de covarianza y matrices de trabajo
En nlme::gls/nlme::lme se modela directamente la matriz de
correlación/covarianza de los residuos dentro de cada sujeto mediante objetos
corStruct:
corCompSymm(simetría compuesta / intercambiable): correlación constante entre cualquier par de tiempos. Equivale, en LMM, a un modelo con solo intercepto aleatorio.corAR1: correlación que decae geométricamente con la distancia entre tiempos (); apropiada cuando los tiempos están igualmente espaciados y la dependencia se atenúa con el tiempo.corExp/corGaus: análogas a AR(1) pero para tiempos continuos/desigualmente espaciados, con decaimiento exponencial o gaussiano.corSymm(no estructurada): una correlación distinta para cada par de tiempos, máxima flexibilidad, pero muchos parámetros (requiere series cortas/balanceadas).corIdent: independencia (sin correlación intra-sujeto), rara vez realista en datos repetidos, útil como referencia.
Cómo elegir: combinar (a) justificación clínica/sustantiva (¿la correlación
debería decaer con el tiempo o ser constante?), (b) gráficos de
autocorrelación de los residuos (ACF) por sujeto/tiempo, y (c) comparación
por AIC/BIC entre estructuras anidadas o no anidadas, ajustando por REML
(la covarianza se compara mejor con REML que con ML).
Heterocedasticidad (varianza que cambia con el tiempo, grupo o predictor)
se modela con funciones de varianza: varIdent (varianza distinta por nivel
de un factor, p. ej. por tiempo), varPower (varianza proporcional a una
potencia de un predictor) y varExp (varianza exponencial en un predictor).
Para GEE (geepack::geeglm), en lugar de modelar la covarianza
explícitamente, se especifica una estructura de correlación de trabajo
(corstr): "independence", "exchangeable", "ar1" o "unstructured".
Gracias a los errores estándar robustos tipo sándwich, las estimaciones de
los coeficientes poblacionales (marginales) son consistentes incluso si la
estructura de trabajo está mal especificada, aunque la eficiencia mejora si
se acierta razonablemente.
4. Comparación y selección de modelos
Estrategia recomendada, de forma secuencial:
- Efectos fijos: empezar con el modelo "saturado" sustantivamente razonable (todas las covariables y sus interacciones de interés).
- Efectos aleatorios: con los efectos fijos fijos, comparar estructuras de efectos aleatorios anidadas vía LRT (ML) y AIC/BIC, de la más simple a la más compleja (intercepto → intercepto+pendiente → anidamiento).
- Covarianza/correlación residual: con la estructura de efectos aleatorios elegida, comparar estructuras de covarianza residual (REML) o estructuras de correlación de trabajo (GEE).
- Solo entonces, si interesa, simplificar efectos fijos comparando con AIC/BIC o tests de Wald (con ML si se comparan efectos fijos por LRT).
Criterios:
- LRT: válido para modelos anidados ajustados con el mismo método (ML para efectos fijos, ML o REML para efectos aleatorios); recordar la advertencia de boundary del punto 2.
- AIC / BIC: comparan modelos anidados o no anidados; BIC penaliza más la complejidad y tiende a preferir modelos más simples en muestras grandes.
- cAIC / mBIC: versiones que tienen en cuenta los grados de libertad
"efectivos" de los efectos aleatorios, más apropiadas cuando el interés
principal es la estructura aleatoria (paquete
cAIC4). - Validación cruzada / bootstrap: especialmente útiles cuando el objetivo es predicción (más que inferencia), o cuando AIC/BIC no distinguen claramente entre modelos candidatos.
5. Diagnóstico de modelos mixtos
- Residuos estandarizados/studentizados vs. valores ajustados: buscar ausencia de patrones y varianza aproximadamente constante.
- DHARMa (residuos simulados): especialmente útil en GLMM, donde los
residuos "crudos" no son fáciles de interpretar.
simulateResiduals()genera residuos cuantil-cuantil comparables a un LMM, permitiendo:plot(): QQ-plot de residuos simulados + residuos vs. predichos.testDispersion(): sobre/infra-dispersión.testZeroInflation(): exceso de ceros respecto a lo esperado por el modelo.
- Outliers e influyentes: distancia de Cook a nivel de observación y de
sujeto (paquete
influence.ME), DFBETAS para evaluar el impacto de cada sujeto sobre las estimaciones de efectos fijos. - Normalidad de los efectos aleatorios: gráfico Q-Q de los BLUPs
(
ranef()) y, de forma exploratoria, prueba de Shapiro-Wilk sobre los BLUPs, recordando que con pocos sujetos esta prueba tiene poca potencia.
6. Árbol de decisión: ¿qué enfoque usar?
Preguntas guía, en orden:
- ¿Qué tipo de respuesta tengo? Continua aproximadamente normal → LMM.
Binaria, conteo, u otra de la familia exponencial → GLMM o GEE. Respuesta
con relación claramente no lineal con el tiempo/predictores → considerar
GAMM (
mgcv::gamm, cons(tiempo)). - ¿Cuál es el objetivo de la inferencia? Si interesa el efecto específico del sujeto (p. ej. "¿cuánto cambia este paciente?") → modelo de efectos mixtos (LMM/GLMM), cuyos coeficientes son condicionales a los efectos aleatorios. Si interesa el efecto poblacional promedio (p. ej. "¿cuál es el efecto promedio del tratamiento en la población?"), especialmente con respuestas no normales, GEE ofrece directamente coeficientes marginales.
- ¿Qué tan compleja es la correlación intra-sujeto y qué tan grande es la muestra? Con pocos clústeres o estructuras de correlación complejas, los GLMM con cuadratura/Laplace pueden ser inestables; GEE con estructura de trabajo simple (intercambiable) suele ser más robusto, a costa de perder la interpretación condicional.
- ¿Se cumplen los supuestos de un modelo paramétrico? Si no (residuos muy no normales, relaciones fuertemente no lineales que no se resuelven con transformaciones), considerar GAMM o métodos no paramétricos (p. ej. modelos basados en rangos para medidas repetidas).
- ¿Exceso de ceros o respuestas acotadas en [0,1]? Considerar modelos ZIP/ZINB (conteos con inflación de ceros) o ZOIP/beta (proporciones con masa en 0 y/o 1).
- REML vs. ML: usar REML (default en
lmer/lme) para la estimación final y para comparar estructuras de covarianza/efectos aleatorios; usar ML si se necesita comparar modelos con distintos efectos fijos por LRT, o si se requiere el AIC/BIC para comparar efectos fijos.
Flujo de análisis
- 1
1. Explorar
Spaghetti plots, perfiles medios y boxplots por tiempo para entender heterogeneidad, tendencia y heterocedasticidad.
- 2
2. Especificar efectos fijos
Definir el modelo de efectos fijos sustantivamente relevante (covariables, tiempo, interacciones de interés).
- 3
3. Especificar efectos aleatorios
Comparar intercepto solo, intercepto+pendiente (con/sin correlación) y estructuras anidadas vía LRT (ML), AIC/BIC e inspección visual de BLUPs.
- 4
4. Elegir covarianza/correlación
Con REML, comparar corCompSymm, corAR1, corSymm, etc. (o estructuras de trabajo en GEE) usando AIC/BIC y gráficos de autocorrelación.
- 5
5. Diagnosticar
Residuos estandarizados, DHARMa (dispersión, zero-inflation), normalidad de BLUPs, outliers/influyentes.
- 6
6. Reportar
Comunicar el modelo final, su justificación (LRT/AIC/BIC + diagnóstico) y, si aplica, análisis de sensibilidad ante datos faltantes.
| Tipo de respuesta | Objetivo de inferencia | Enfoque recomendado |
|---|---|---|
| Continua, aprox. normal | Específico del sujeto | LMM (lmer / lme) |
| Binaria / conteo | Específico del sujeto (condicional) | GLMM (glmer) |
| Binaria / conteo | Poblacional (marginal) | GEE (geeglm) |
| Continua o no normal | Tendencia no lineal en el tiempo | GAMM (mgcv::gamm) |
| Conteo con exceso de ceros | Cualquiera | ZIP / ZINB (glmmTMB, GLMMadaptive) |
| Proporción en [0,1] con masa en extremos | Cualquiera | ZOIP / regresión beta |
REML vs. ML: regla práctica
Usa REML (el valor por defecto) para la estimación final y para comparar estructuras de covarianza o de efectos aleatorios. Cambia a ML solo cuando necesites comparar modelos con distintos efectos fijos mediante LRT o AIC/BIC.
LRT en el límite del espacio de parámetros
Al comparar un modelo con un efecto aleatorio adicional contra uno sin él, la varianza bajo H0 está en el límite (cero). El p-valor del LRT clásico (anova()) es conservador: si resulta significativo a pesar de esto, la evidencia a favor del efecto aleatorio es aún más fuerte; si no es significativo, considera también el AIC/BIC y la inspección visual antes de descartarlo.
Datos faltantes y MAR
Los modelos mixtos (LMM/GLMM) usan toda la información disponible y son válidos bajo el supuesto MAR sin necesidad de imputar. La imputación múltiple (mice) es más relevante cuando el análisis principal es GEE, que requiere MCAR para mantener su validez, o cuando se desea armonizar varios análisis sobre el mismo conjunto de datos completo.
No elijas la covarianza solo por el AIC
El AIC/BIC ayuda a comparar estructuras de covarianza, pero la elección también debe ser clínicamente plausible (¿tiene sentido que la correlación decaiga con el tiempo en este fenómeno?) y verificarse con gráficos de autocorrelación de los residuos.
Autoevaluación
1. ¿Cuándo preferirías GEE sobre GLMM para un desenlace binario repetido?
2. Al comparar un modelo con intercepto aleatorio frente a otro con intercepto y pendiente aleatorios mediante LRT (anova en lme4), ¿qué se debe tener en cuenta?
3. ¿Qué estructura de covarianza en nlme::gls equivale aproximadamente a un LMM con solo intercepto aleatorio?
4. En DHARMa, ¿qué función usarías para evaluar si un GLMM Poisson presenta sobredispersión?