# Cargar paquetes
if (!require("pacman")) install.packages("pacman")
pacman::p_load(
lavaan,
dplyr,
lavaanPlot
)Práctico 10: Análisis de Senderos
Análisis de Senderos con lavaan
0. Objetivos del Práctico
En este práctico, aprenderemos a especificar, estimar e interpretar modelos de Análisis de Senderos (Path Analysis - PA) utilizando el paquete lavaan en R. Nos enfocaremos en:
- Comprender la lógica y sintaxis para definir modelos de senderos en
lavaan. - Realizar una revisión de supuestos pertinente para el Análisis de Senderos, adaptando nuestras decisiones según los hallazgos.
- Estimar los parámetros del modelo utilizando un estimador adecuado, en este caso,
MLR(Máxima Verosimilitud Robusta), debido a la naturaleza continua de los índices promedio utilizados. - Evaluar el ajuste global del modelo a los datos mediante diversos índices.
- Interpretar detalladamente los coeficientes path (directos e indirectos) y la varianza explicada (\(R^2\)).
- Visualizar el modelo de senderos.
Introducción al Ejemplo
El análisis de senderos permite ir más allá de las correlaciones simples y testear teorías sobre cómo diferentes variables se relacionan entre sí, tanto de forma directa como a través de variables intermedias (mediadoras).
Trabajaremos con un ejemplo adaptado del taller de la Dra. Monica Gerber sobre Ecuaciones Estructurales. El objetivo es analizar el efecto de la posición política sobre el acuerdo con castigos severos para quienes cometen delitos, considerando el autoritarismo de derechas (RWA) como una variable mediadora.
Modelo Hipotetizado Inicial:
Este es el diagrama conceptual que representa nuestra teoría inicial:

1. Carga de Paquetes y Datos
Comenzamos cargando los paquetes que necesitaremos. {lavaan} será nuestra herramienta principal para el análisis de senderos.
Para este práctico, trabajaremos con la base de datos longitudinal ELSOC_Long_2016_2023.RData. Puedes descargarla desde Dataverse:
👉 Descargar ELSOC_Long_2016_2023.RData
Descarga el archivo .RData y guárdalo en la carpeta raíz de tu proyecto (la misma donde está el archivo .Rproj). Al cargarla se importará el objeto elsoc_long_2016_2023.
Dado que nuestro análisis se centra en el año 2016, filtraremos las observaciones correspondientes a la Ola 1 y construiremos nuestras variables de interés a partir de los ítems originales de la encuesta:
- Autoritarismo de derechas (RWA): Promedio de los ítems
c18_04(“gobierno firme”),c18_05(“mandatario fuerte”),c18_06(“obediencia en niños”) yc18_07(“obediencia y disciplina”). - Acuerdo con castigos severos (Punición): Promedio de los ítems
f06_01(“Asaltantes cumplir condena”) yf06_02(“Condenas largas”). - Posición política: Recodificamos la escala de autoubicación
c15(0-10) en tres dummies (derecha[7-10],centro[4-6],izquierda[0-3]), dejando a los independientes o sin posición (11o12) como categoría de referencia. Los coeficientes de cada dummy se interpretan en comparación con ese grupo.
# Cargar la base de datos longitudinal ELSOC
load("ELSOC_Long_2016_2023.RData")
# Preparar las variables del modelo a partir de Ola 1 (2016)
datos <- elsoc_long_2016_2023 %>%
filter(ola == 1) %>%
mutate(
# Convertir perdidos a NA
c18_04 = ifelse(c18_04 %in% 1:5, c18_04, NA),
c18_05 = ifelse(c18_05 %in% 1:5, c18_05, NA),
c18_06 = ifelse(c18_06 %in% 1:5, c18_06, NA),
c18_07 = ifelse(c18_07 %in% 1:5, c18_07, NA),
f06_01 = ifelse(f06_01 %in% 1:5, f06_01, NA),
f06_02 = ifelse(f06_02 %in% 1:5, f06_02, NA)
) %>%
mutate(
# Construcción de variables promedio y dummies políticas
castigo_media = (f06_01 + f06_02) / 2,
rwa_media = (c18_04 + c18_05 + c18_06 + c18_07) / 4,
derecha = ifelse(c15 %in% 7:10, 1, ifelse(c15 %in% c(0:6, 11:12), 0, NA)),
izquierda = ifelse(c15 %in% 0:3, 1, ifelse(c15 %in% c(4:12), 0, NA)),
centro = ifelse(c15 %in% 4:6, 1, ifelse(c15 %in% c(0:3, 7:12), 0, NA))
)2. Revisión de Datos
Antes de ajustar el modelo, revisamos las características de los datos y su relación con los supuestos de la técnica.
variables_modelo <- c("castigo_media", "rwa_media", "derecha", "izquierda", "centro")
datos_modelo <- select(datos, all_of(variables_modelo))
datos_modelo_completos <- na.omit(datos_modelo)
casos <- data.frame(
momento = c("Antes de eliminar NA", "Después de eliminar NA", "Eliminadas"),
n = c(
nrow(datos_modelo),
nrow(datos_modelo_completos),
nrow(datos_modelo) - nrow(datos_modelo_completos)
)
)
casosround(cor(datos_modelo_completos), 2) castigo_media rwa_media derecha izquierda centro
castigo_media 1.00 0.28 0.07 -0.09 -0.06
rwa_media 0.28 1.00 0.11 -0.19 -0.02
derecha 0.07 0.11 1.00 -0.15 -0.23
izquierda -0.09 -0.19 -0.15 1.00 -0.28
centro -0.06 -0.02 -0.23 -0.28 1.00
asimetria <- function(x) mean(((x - mean(x)) / sd(x))^3)
curtosis <- function(x) mean(((x - mean(x)) / sd(x))^4) - 3
normalidad <- data.frame(
variable = names(datos_modelo_completos),
asimetria = sapply(datos_modelo_completos, asimetria),
curtosis = sapply(datos_modelo_completos, curtosis)
) %>%
mutate(across(where(is.numeric), function(x) round(x, 2)))
normalidadLectura:
- Casos Perdidos: Se eliminaron 120 observaciones debido a valores perdidos en alguna de las variables del modelo, quedando 2807 casos completos para el análisis. Esta pérdida es de aproximadamente 4.1%.
- Correlaciones (Pearson):
castigo_mediayrwa_mediamuestran una correlación positiva moderada de 0.28.rwa_mediatiene una correlación positiva conderecha(0.11) y negativa conizquierda(-0.19), y prácticamente nula concentro(-0.02).castigo_mediatiene una correlación positiva baja conderecha(0.07) y negativa conizquierda(-0.09) ycentro(-0.06).- No se observan correlaciones altas (ej. > 0.80) entre los predictores de
rwa_media, lo que sugiere que la multicolinealidad no debiera dominar la estimación.
- Distribución: La tabla de asimetría y curtosis muestra que las variables del modelo no siguen una forma normal simétrica. Dado que
castigo_mediayrwa_mediason índices promedio continuos, usaremos MLR (Maximum Likelihood Robust / Máxima Verosimilitud Robusta) para estimar errores estándar e índices de ajuste con correcciones robustas.
3. Especificación y Estimación del Modelo de Senderos Inicial
Especificamos el modelo donde el autoritarismo (rwa_media) actúa como una variable intermedia entre la posición política y el acuerdo con castigos severos (castigo_media).
Sintaxis de lavaan:
| Sintaxis | Operador | Ejemplo |
|---|---|---|
| Regresión | ~ |
Y ~ X (Y es predicha por X) |
| Covarianza / Varianza | ~~ |
X1 ~~ X2 (Covarianza entre errores/variables) |
| Parámetro Definido | := |
ind := a*b (Definición de efectos indirectos) |
| Etiquetar Path | * |
Y ~ b1*X (Etiqueta el path como b1) |
# Especificar el modelo de senderos inicial
mod_sendero1_spec <- '
# Regresiones (senderos directos)
castigo_media ~ rwa_media
rwa_media ~ derecha + izquierda + centro
'
# Ajustar el modelo usando MLR y datos_modelo_completos
ajus_sendero1 <- sem(model = mod_sendero1_spec,
data = datos_modelo_completos,
estimator = "MLR") # Estimador robustoModelo inicial
summary(ajus_sendero1,
fit.measures = TRUE,
standardized = TRUE,
rsquare = TRUE)lavaan 0.6-21 ended normally after 1 iteration
Estimator ML
Optimization method NLMINB
Number of model parameters 6
Number of observations 2807
Model Test User Model:
Standard Scaled
Test Statistic 20.084 19.411
Degrees of freedom 3 3
P-value (Chi-square) 0.000 0.000
Scaling correction factor 1.035
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 376.055 337.175
Degrees of freedom 7 7
P-value 0.000 0.000
Scaling correction factor 1.115
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.954 0.950
Tucker-Lewis Index (TLI) 0.892 0.884
Robust Comparative Fit Index (CFI) 0.954
Robust Tucker-Lewis Index (TLI) 0.892
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -6354.047 -6354.047
Scaling correction factor 1.447
for the MLR correction
Loglikelihood unrestricted model (H1) -6344.005 -6344.005
Scaling correction factor 1.310
for the MLR correction
Akaike (AIC) 12720.093 12720.093
Bayesian (BIC) 12755.733 12755.733
Sample-size adjusted Bayesian (SABIC) 12736.668 12736.668
Root Mean Square Error of Approximation:
RMSEA 0.045 0.044
90 Percent confidence interval - lower 0.028 0.027
90 Percent confidence interval - upper 0.065 0.063
P-value H_0: RMSEA <= 0.050 0.629 0.662
P-value H_0: RMSEA >= 0.080 0.001 0.001
Robust RMSEA 0.045
90 Percent confidence interval - lower 0.027
90 Percent confidence interval - upper 0.065
P-value H_0: Robust RMSEA <= 0.050 0.630
P-value H_0: Robust RMSEA >= 0.080 0.001
Standardized Root Mean Square Residual:
SRMR 0.020 0.020
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Regressions:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
castigo_media ~
rwa_media 0.280 0.022 12.565 0.000 0.280 0.279
rwa_media ~
derecha 0.178 0.041 4.362 0.000 0.178 0.072
izquierda -0.414 0.050 -8.259 0.000 -0.414 -0.191
centro -0.092 0.033 -2.771 0.006 -0.092 -0.055
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.castigo_media 0.557 0.024 22.967 0.000 0.557 0.922
.rwa_media 0.570 0.018 32.257 0.000 0.570 0.955
R-Square:
Estimate
castigo_media 0.078
rwa_media 0.045
Lectura del modelo inicial:
- Ajuste Global del Modelo:
- Test \(\chi^2_{\text{scaled}}\) (corrección Yuan-Bentler): El estadístico robusto es 19.411 con 3 grados de libertad (\(p < 0.001\)). Aunque el p-valor significativo sugiere desajuste, este estadístico es sensible al tamaño muestral en muestras grandes (\(N = 2807\)), por lo que conviene complementar su lectura con otros índices heurísticos (Kline, 2023).
- Robust CFI = 0.954; Robust TLI = 0.892: El CFI robusto supera el umbral tradicionalmente aceptado de 0.90 (e incluso el de 0.95). El TLI robusto se sitúa en 0.892, levemente por debajo del umbral de 0.90.
- Robust RMSEA = 0.045 (IC 90%: 0.028 - 0.065): Se ubica bajo el criterio de 0.05, lo que sugiere buen ajuste de aproximación por grados de libertad.
- SRMR = 0.020: Se ubica bajo el límite de 0.08, lo que indica discrepancias pequeñas entre correlaciones observadas y reproducidas.
- Conclusión de Ajuste Inicial: Los índices robustos globales sugieren un ajuste razonable, aunque el TLI marginalmente bajo (0.892) motiva revisar el ajuste local.
- Estimaciones de los Senderos (
Std.allpara estandarizados):castigo_media ~ rwa_media: El coeficiente path estandarizado es 0.279 (\(p < 0.001\)). Por cada aumento de una desviación estándar en autoritarismo (rwa_media), el acuerdo con castigos severos (castigo_media) aumenta en promedio estimado un 0.279 DE. Es una asociación positiva y estadísticamente significativa.rwa_media ~ derecha: Path = 0.072 (\(p < 0.001\)). Autoubicarse en la derecha (en comparación con ser independiente/ninguno) se asocia con un aumento estimado de 0.072 DE en autoritarismo.rwa_media ~ izquierda: Path = -0.191 (\(p < 0.001\)). Autoubicarse en la izquierda se asocia con una disminución estimada de 0.191 DE en autoritarismo.rwa_media ~ centro: Path = -0.055 (\(p = 0.006\)). Autoubicarse en el centro se asocia con una disminución estimada de 0.055 DE en autoritarismo.
- \(R^2\) (Varianza Explicada):
- Para
castigo_media: \(R^2 = 0.078\) (el modelo explica el 7.8% de su varianza). - Para
rwa_media: \(R^2 = 0.045\) (el modelo explica el 4.5% de su varianza).
- Para
3.1 Evaluación del Ajuste Local (Matriz de Residuos)
Siguiendo a Kline (2023), la evaluación de un modelo estructural no debiera limitarse a los índices de ajuste global. Los índices globales pueden enmascarar desajustes locales entre variables específicas. Por ello, inspeccionamos la Matriz de Residuos de Correlación.
Un residuo de correlación es la discrepancia entre la correlación observada empíricamente en la muestra y la correlación reproducida por las restricciones del modelo. Como criterio práctico, buscamos que los residuos de correlación en valor absoluto sean inferiores a 0.10 (Kline, 2023). Usamos este criterio porque evalúa el tamaño del desajuste en la escala de correlaciones; los residuos estandarizados, en cambio, son sensibles al tamaño muestral y pueden marcar como problemáticas discrepancias pequeñas cuando N es grande.
En lavaan, podemos extraer y visualizar la matriz de residuos de correlación utilizando lavResiduals con type = "cor" y accediendo al elemento [["cov"]] de la lista resultante:
residuos_list <- lavResiduals(ajus_sendero1, type = "cor")
residuos_cor <- residuos_list[["cov"]]
round(residuos_cor, 3) cstg_m rwa_md derech izqurd centro
castigo_media 0.000
rwa_media 0.000 0.000
derecha 0.042 0.000 0.000
izquierda -0.041 0.000 0.000 0.000
centro -0.052 0.000 0.000 0.000 0.000
Lectura del ajuste local:
- Como se observa en la consola, los residuos de correlación son pequeños. Las mayores discrepancias se presentan en la relación de
castigo_mediacon las variables de posición política: ser de centro (-0.052), derecha (0.042) e izquierda (-0.041). - Estos residuos se encuentran bajo el umbral de 0.10, lo que sugiere que no hay desajustes locales grandes.
- Sustento para la Reespecificación: Aunque los residuos son aceptables, su patrón entre posición política y acuerdo con el castigo sugiere evaluar si la ideología política se asocia con actitudes punitivas no solo a través del autoritarismo, sino también mediante un efecto directo estadístico. Esta reespecificación debe leerse como una extensión teóricamente motivada del modelo inicial.
4. Modelo Modificado: Incluyendo Efectos Directos y Definiendo Efectos Indirectos
Dado que la teoría sugiere que la ideología política (derecha) tiene influencias tanto directas como indirectas sobre las actitudes hacia el castigo, especificaremos un modelo reespecificado. Añadiremos una relación directa de derecha sobre castigo_media y calcularemos explícitamente el efecto indirecto y el efecto total usando el operador :=.
Nuevo Modelo Hipotetizado: 
# Especificar el modelo con efecto directo de 'derecha' y etiquetas para efectos indirectos/totales
mod_sendero2_spec <- '
# Regresiones (senderos directos con etiquetas a, b, c)
castigo_media ~ a*rwa_media + c*derecha # a es rwa->castigo, c es derecha->castigo
rwa_media ~ b*derecha + izquierda + centro # b es derecha->rwa
# Definir efecto indirecto de derecha sobre castigo_media via rwa_media
ind_derecha_rwa := a*b
# Definir efecto total de derecha sobre castigo_media
total_derecha_rwa := (a*b) + c
'
# Ajustar el modelo modificado con MLR
ajus_sendero2 <- sem(model = mod_sendero2_spec,
data = datos_modelo_completos,
estimator = "MLR")Modelo modificado
summary(ajus_sendero2,
fit.measures = TRUE,
standardized = TRUE,
rsquare = TRUE)lavaan 0.6-21 ended normally after 1 iteration
Estimator ML
Optimization method NLMINB
Number of model parameters 7
Number of observations 2807
Model Test User Model:
Standard Scaled
Test Statistic 14.694 13.653
Degrees of freedom 2 2
P-value (Chi-square) 0.001 0.001
Scaling correction factor 1.076
Yuan-Bentler correction (Mplus variant)
Model Test Baseline Model:
Test statistic 376.055 337.175
Degrees of freedom 7 7
P-value 0.000 0.000
Scaling correction factor 1.115
User Model versus Baseline Model:
Comparative Fit Index (CFI) 0.966 0.965
Tucker-Lewis Index (TLI) 0.880 0.876
Robust Comparative Fit Index (CFI) 0.966
Robust Tucker-Lewis Index (TLI) 0.881
Loglikelihood and Information Criteria:
Loglikelihood user model (H0) -6351.352 -6351.352
Scaling correction factor 1.376
for the MLR correction
Loglikelihood unrestricted model (H1) -6344.005 -6344.005
Scaling correction factor 1.310
for the MLR correction
Akaike (AIC) 12716.703 12716.703
Bayesian (BIC) 12758.282 12758.282
Sample-size adjusted Bayesian (SABIC) 12736.041 12736.041
Root Mean Square Error of Approximation:
RMSEA 0.048 0.046
90 Percent confidence interval - lower 0.027 0.025
90 Percent confidence interval - upper 0.072 0.069
P-value H_0: RMSEA <= 0.050 0.519 0.581
P-value H_0: RMSEA >= 0.080 0.012 0.006
Robust RMSEA 0.047
90 Percent confidence interval - lower 0.026
90 Percent confidence interval - upper 0.072
P-value H_0: Robust RMSEA <= 0.050 0.522
P-value H_0: Robust RMSEA >= 0.080 0.014
Standardized Root Mean Square Residual:
SRMR 0.014 0.014
Parameter Estimates:
Standard errors Sandwich
Information bread Observed
Observed information based on Hessian
Regressions:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
castigo_media ~
rwa_media (a) 0.276 0.022 12.270 0.000 0.276 0.274
derecha (c) 0.105 0.044 2.394 0.017 0.105 0.042
rwa_media ~
derecha (b) 0.178 0.041 4.362 0.000 0.178 0.072
izquierda -0.414 0.050 -8.259 0.000 -0.414 -0.191
centro -0.092 0.033 -2.771 0.006 -0.092 -0.055
Variances:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
.castigo_media 0.556 0.024 22.937 0.000 0.556 0.921
.rwa_media 0.570 0.018 32.257 0.000 0.570 0.955
R-Square:
Estimate
castigo_media 0.079
rwa_media 0.045
Defined Parameters:
Estimate Std.Err z-value P(>|z|) Std.lv Std.all
ind_derecha_rw 0.049 0.012 4.194 0.000 0.049 0.020
total_derch_rw 0.154 0.045 3.394 0.001 0.154 0.062
Lectura del modelo modificado:
- Ajuste Global del Modelo Modificado:
- Test \(\chi^2_{\text{scaled}}\): 13.653 con 2 grados de libertad (\(p = 0.001\)). El estadístico disminuyó significativamente respecto al primer modelo (era 19.411), lo que refleja un mejor ajuste tras la inclusión del path directo. (Scaling correction factor = 1.076).
- Robust CFI = 0.966; Robust TLI = 0.881: El CFI robusto aumentó y supera el criterio heurístico de 0.95. El TLI robusto sigue ubicándose en una zona marginal debido a la penalización por grados de libertad en modelos con muy pocos parámetros, lo que recuerda que los índices son heurísticos y no reglas absolutas (Kline, 2023).
- Robust RMSEA = 0.047 (IC 90%: 0.027 - 0.072): Sugiere un buen ajuste de aproximación (<0.05), con un límite superior del intervalo de confianza por debajo de 0.08.
- SRMR = 0.014: Disminuyó de 0.020 a 0.014, lo que indica discrepancias locales pequeñas.
- Conclusión de Ajuste: La reespecificación del modelo mejora algunos índices de ajuste y permite representar el efecto directo de
derecha.
- Estimaciones de los Senderos (
Std.allpara estandarizados):castigo_media ~ rwa_media(patha): Coeficiente estandarizado = 0.274 (\(p < 0.001\)).castigo_media ~ derecha(pathc): Coeficiente estandarizado = 0.042 (\(p = 0.017\)). Esto indica una asociación directa positiva entre autoubicarse en la derecha y el acuerdo con castigos severos, controlando por el nivel de autoritarismo.rwa_media ~ derecha(pathb): Coeficiente estandarizado = 0.072 (\(p < 0.001\)).
- \(R^2\) (Varianza Explicada):
- Para
castigo_media: \(R^2 = 0.079\) (el modelo explica el 7.9% de su varianza). - Para
rwa_media: \(R^2 = 0.045\) (el modelo explica el 4.5% de su varianza).
- Para
- Parámetros Definidos (
Defined Parameters - Std.all):ind_derecha_rwa (a*b): El efecto indirecto estimado dederechasobrecastigo_mediaa través del autoritarismo es 0.020 (\(p < 0.001\), coeficiente no estandarizado = 0.049). Es estadísticamente significativo.total_derecha_rwa ((a*b)+c): El efecto total estandarizado dederechaes 0.062 (\(p = 0.001\), coeficiente no estandarizado = 0.154).- Interpretación Sustantiva: Ser de derecha se asocia con un mayor acuerdo con castigos severos. Este efecto total está compuesto por una asociación directa de carácter ideológico (path
c) y una relación indirecta estadísticamente significativa mediada por el nivel de autoritarismo del individuo (patha * b).
5. Visualización del Modelo Final (con lavaanPlot)
# Diagrama del modelo de senderos modificado
lavaanPlot(
model = ajus_sendero2,
node_options = list(shape = "box", fontname = "Helvetica"),
edge_options = list(color = "black"),
coefs = TRUE, # Muestra los coeficientes
stand = TRUE, # Usa coeficientes estandarizados
stars = "regress" # Añade estrellas de significancia
)Interpretación del Gráfico: El diagrama visualiza el modelo especificado. Las flechas muestran los coeficientes de regresión estandarizados (Std.all). Las estrellas indican que todas las trayectorias representadas son estadísticamente significativas a un nivel de confianza del 95% o superior.
6. Cierre
En este práctico hemos:
- Evaluado los supuestos del Análisis de Senderos, diagnosticando violaciones a la normalidad multivariante, lo que fundamentó el uso del estimador robusto MLR (Maximum Likelihood Robust) para variables continuas promediadas en R.
- Especificado y estimado un modelo inicial y un modelo modificado que incorpora un sendero directo de la posición política.
- Examinado el Ajuste Local mediante la Matriz de Residuos de Correlación, encontrando discrepancias mínimas e inferiores al \(|0.10|\) recomendado (Kline, 2023).
- Definido y testeado un efecto indirecto estadístico (0.020) y un efecto total (0.062) de autoubicarse en la derecha sobre el acuerdo con el castigo, mediado por el autoritarismo.
Nota sobre la Inferencia Causal y Modelos Equivalentes
Al trabajar con datos transversales (cross-sectional) como los de la Ola 1 de ELSOC, estos resultados deben interpretarse con cautela metodológica:
- Ausencia de Precedencia Temporal: La mediación teórica es un proceso causal dinámico que requiere precedencia temporal, es decir, que la causa anteceda a la variable intermedia, y esta al resultado en el tiempo (\(X \longrightarrow M \longrightarrow Y\)). Al haber medido todas las variables en un mismo instante, lo que estimamos son únicamente efectos indirectos estadísticos (asociaciones condicionadas).
- Modelos Equivalentes: Estadísticamente, existen especificaciones alternativas (ej. que el acuerdo con el castigo genere mayor autoritarismo, o que ambos sean explicados por un factor común omitido) que reproducirían exactamente la misma matriz de covarianza implicada y, por lo tanto, los mismos índices de ajuste global.
- Recomendación: La validez de la direccionalidad de las flechas no descansa en los índices de ajuste de R, sino en la solidez de la teoría sociológica y en la explotación de diseños longitudinales (ej. analizando olas de seguimiento de ELSOC).
