library(lavaan)
library(lavaanPlot)
library(readxl)
La base de datos recoge los resultados de 301 estudiantes de séptimo y octavo grado de dos escuelas, Pasteur y Grant-White, a los que se les aplicaron nueve pruebas de aptitud mental. La idea del estudio era comprobar si esas nueve pruebas medían en realidad tres habilidades distintas y no nueve cosas separadas.
La tabla incluye los siguientes datos:
df1 <- HolzingerSwineford1939
summary(df1)
## id sex ageyr agemo
## Min. : 1.0 Min. :1.000 Min. :11 Min. : 0.000
## 1st Qu.: 82.0 1st Qu.:1.000 1st Qu.:12 1st Qu.: 2.000
## Median :163.0 Median :2.000 Median :13 Median : 5.000
## Mean :176.6 Mean :1.515 Mean :13 Mean : 5.375
## 3rd Qu.:272.0 3rd Qu.:2.000 3rd Qu.:14 3rd Qu.: 8.000
## Max. :351.0 Max. :2.000 Max. :16 Max. :11.000
##
## school grade x1 x2
## Grant-White:145 Min. :7.000 Min. :0.6667 Min. :2.250
## Pasteur :156 1st Qu.:7.000 1st Qu.:4.1667 1st Qu.:5.250
## Median :7.000 Median :5.0000 Median :6.000
## Mean :7.477 Mean :4.9358 Mean :6.088
## 3rd Qu.:8.000 3rd Qu.:5.6667 3rd Qu.:6.750
## Max. :8.000 Max. :8.5000 Max. :9.250
## NAs :1
## x3 x4 x5 x6
## Min. :0.250 Min. :0.000 Min. :1.000 Min. :0.1429
## 1st Qu.:1.375 1st Qu.:2.333 1st Qu.:3.500 1st Qu.:1.4286
## Median :2.125 Median :3.000 Median :4.500 Median :2.0000
## Mean :2.250 Mean :3.061 Mean :4.341 Mean :2.1856
## 3rd Qu.:3.125 3rd Qu.:3.667 3rd Qu.:5.250 3rd Qu.:2.7143
## Max. :4.500 Max. :6.333 Max. :7.000 Max. :6.1429
##
## x7 x8 x9
## Min. :1.304 Min. : 3.050 Min. :2.778
## 1st Qu.:3.478 1st Qu.: 4.850 1st Qu.:4.750
## Median :4.087 Median : 5.500 Median :5.417
## Mean :4.186 Mean : 5.527 Mean :5.374
## 3rd Qu.:4.913 3rd Qu.: 6.100 3rd Qu.:6.083
## Max. :7.435 Max. :10.000 Max. :9.250
##
str(df1)
## 'data.frame': 301 obs. of 15 variables:
## $ id : int 1 2 3 4 5 6 7 8 9 11 ...
## $ sex : int 1 2 2 1 2 2 1 2 2 2 ...
## $ ageyr : int 13 13 13 13 12 14 12 12 13 12 ...
## $ agemo : int 1 7 1 2 2 1 1 2 0 5 ...
## $ school: Factor w/ 2 levels "Grant-White",..: 2 2 2 2 2 2 2 2 2 2 ...
## $ grade : int 7 7 7 7 7 7 7 7 7 7 ...
## $ x1 : num 3.33 5.33 4.5 5.33 4.83 ...
## $ x2 : num 7.75 5.25 5.25 7.75 4.75 5 6 6.25 5.75 5.25 ...
## $ x3 : num 0.375 2.125 1.875 3 0.875 ...
## $ x4 : num 2.33 1.67 1 2.67 2.67 ...
## $ x5 : num 5.75 3 1.75 4.5 4 3 6 4.25 5.75 5 ...
## $ x6 : num 1.286 1.286 0.429 2.429 2.571 ...
## $ x7 : num 3.39 3.78 3.26 3 3.7 ...
## $ x8 : num 5.75 6.25 3.9 5.3 6.3 6.65 6.2 5.15 4.65 4.55 ...
## $ x9 : num 6.36 7.92 4.42 4.86 5.92 ...
Las tres primeras pruebas se agrupan en una habilidad visual, las
tres siguientes en una habilidad verbal y las tres últimas en una
habilidad de velocidad. Ninguna de las tres se observa de forma directa,
por eso se declaran como variables latentes con =~.
modelo1 <- '
# Variables latentes
visual =~ x1 + x2 + x3
textual =~ x4 + x5 + x6
velocidad =~ x7 + x8 + x9
'
fit1 <- cfa(modelo1, data = df1)
summary(fit1, fit.measures = TRUE, standardized = TRUE)
## lavaan 0.7-2 ended normally after 35 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 21
##
## Number of observations 301
##
## Model Test User Model:
##
## Test statistic 85.306
## Degrees of freedom 24
## P-value (Chi-square) 0.000
##
## Model Test Baseline Model:
##
## Test statistic 918.852
## Degrees of freedom 36
## P-value 0.000
##
## User Model versus Baseline Model:
##
## Comparative Fit Index (CFI) 0.931
## Tucker-Lewis Index (TLI) 0.896
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) -3737.745
## Loglikelihood unrestricted model (H1) -3695.092
##
## Akaike (AIC) 7517.490
## Bayesian (BIC) 7595.339
## Sample-size adjusted Bayesian (SABIC) 7528.739
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.092
## 90 Percent confidence interval - lower 0.071
## 90 Percent confidence interval - upper 0.114
## P-value H_0: RMSEA <= 0.050 0.001
## P-value H_0: RMSEA >= 0.080 0.840
##
## Standardized Root Mean Square Residual:
##
## SRMR 0.065
##
## Goodness of Fit Index:
##
## Goodness of Fit Index (GFI) 0.959
## 90 Percent confidence interval - lower 0.939
## 90 Percent confidence interval - upper 0.976
##
## Parameter Estimates:
##
## Standard errors Standard
## Information Expected
## Information saturated (h1) model Structured
##
## Latent Variables:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## visual =~
## x1 1.000 0.900 0.772
## x2 0.554 0.100 5.554 0.000 0.498 0.424
## x3 0.729 0.109 6.685 0.000 0.656 0.581
## textual =~
## x4 1.000 0.990 0.852
## x5 1.113 0.065 17.014 0.000 1.102 0.855
## x6 0.926 0.055 16.703 0.000 0.917 0.838
## velocidad =~
## x7 1.000 0.619 0.570
## x8 1.180 0.165 7.152 0.000 0.731 0.723
## x9 1.082 0.151 7.155 0.000 0.670 0.665
##
## Covariances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## visual ~~
## textual 0.408 0.074 5.552 0.000 0.459 0.459
## velocidad 0.262 0.056 4.660 0.000 0.471 0.471
## textual ~~
## velocidad 0.173 0.049 3.518 0.000 0.283 0.283
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .x1 0.549 0.114 4.833 0.000 0.549 0.404
## .x2 1.134 0.102 11.146 0.000 1.134 0.821
## .x3 0.844 0.091 9.317 0.000 0.844 0.662
## .x4 0.371 0.048 7.779 0.000 0.371 0.275
## .x5 0.446 0.058 7.642 0.000 0.446 0.269
## .x6 0.356 0.043 8.277 0.000 0.356 0.298
## .x7 0.799 0.081 9.823 0.000 0.799 0.676
## .x8 0.488 0.074 6.573 0.000 0.488 0.477
## .x9 0.566 0.071 8.003 0.000 0.566 0.558
## visual 0.809 0.145 5.564 0.000 1.000 1.000
## textual 0.979 0.112 8.737 0.000 1.000 1.000
## velocidad 0.384 0.086 4.451 0.000 1.000 1.000
lavaanPlot(fit1, coefs = TRUE, cov = TRUE)
Las nueve pruebas sí se acomodan en tres habilidades. Todas las cargas resultan significativas y en la versión estandarizada casi todas quedan por arriba de 0.4, así que cada prueba aporta a la habilidad que le corresponde. Las cargas más flojas son las de x2 y x9, que son las pruebas que menos se parecen al resto de su grupo.
El ajuste todavía no es fino. La chi cuadrada sale significativa y el RMSEA queda por arriba de lo aceptable, así que hay relaciones entre pruebas que el modelo de tres factores no está recogiendo. La estructura de fondo se sostiene, pero el modelo admite depuración.
Las tres habilidades correlacionan entre sí, la visual con la de velocidad más que con la verbal. Un alumno bueno en una tiende a ser bueno en las otras, pero no lo suficiente como para decir que se trata de una sola inteligencia general.
La base de datos contiene distintas mediciones sobre la democracia política e industrialización en países de desarrollo durante 1960 y 1965.
La tabla incluye los siguientes datos:
df2 <- PoliticalDemocracy
summary(df2)
## y1 y2 y3 y4
## Min. : 1.250 Min. : 0.000 Min. : 0.000 Min. : 0.000
## 1st Qu.: 2.900 1st Qu.: 0.000 1st Qu.: 3.767 1st Qu.: 1.581
## Median : 5.400 Median : 3.333 Median : 6.667 Median : 3.333
## Mean : 5.465 Mean : 4.256 Mean : 6.563 Mean : 4.453
## 3rd Qu.: 7.500 3rd Qu.: 8.283 3rd Qu.:10.000 3rd Qu.: 6.667
## Max. :10.000 Max. :10.000 Max. :10.000 Max. :10.000
## y5 y6 y7 y8
## Min. : 0.000 Min. : 0.000 Min. : 0.000 Min. : 0.000
## 1st Qu.: 3.692 1st Qu.: 0.000 1st Qu.: 3.478 1st Qu.: 1.301
## Median : 5.000 Median : 2.233 Median : 6.667 Median : 3.333
## Mean : 5.136 Mean : 2.978 Mean : 6.196 Mean : 4.043
## 3rd Qu.: 7.500 3rd Qu.: 4.207 3rd Qu.:10.000 3rd Qu.: 6.667
## Max. :10.000 Max. :10.000 Max. :10.000 Max. :10.000
## x1 x2 x3
## Min. :3.784 Min. :1.386 Min. :1.002
## 1st Qu.:4.477 1st Qu.:3.663 1st Qu.:2.300
## Median :5.075 Median :4.963 Median :3.568
## Mean :5.054 Mean :4.792 Mean :3.558
## 3rd Qu.:5.515 3rd Qu.:5.830 3rd Qu.:4.523
## Max. :6.737 Max. :7.872 Max. :6.425
str(df2)
## 'data.frame': 75 obs. of 11 variables:
## $ y1: num 2.5 1.25 7.5 8.9 10 7.5 7.5 7.5 2.5 10 ...
## $ y2: num 0 0 8.8 8.8 3.33 ...
## $ y3: num 3.33 3.33 10 10 10 ...
## $ y4: num 0 0 9.2 9.2 6.67 ...
## $ y5: num 1.25 6.25 8.75 8.91 7.5 ...
## $ y6: num 0 1.1 8.09 8.13 3.33 ...
## $ y7: num 3.73 6.67 10 10 10 ...
## $ y8: num 3.333 0.737 8.212 4.615 6.667 ...
## $ x1: num 4.44 5.38 5.96 6.29 5.86 ...
## $ x2: num 3.64 5.06 6.26 7.57 6.82 ...
## $ x3: num 2.56 3.57 5.22 6.27 4.57 ...
modelo2 <- '
# Variables latentes
democracia1960 =~ y1 + y2 + y3 + y4
democracia1965 =~ y5 + y6 + y7 + y8
industria1960 =~ x1 + x2 + x3
# Regresiones
democracia1960 ~ industria1960
democracia1965 ~ industria1960 + democracia1960
# Varianzas y covarianzas
# Intercepto
'
fit2 <- sem(modelo2, data = df2)
summary(fit2, fit.measures = TRUE, standardized = TRUE)
## lavaan 0.7-2 ended normally after 42 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 25
##
## Number of observations 75
##
## Model Test User Model:
##
## Test statistic 72.462
## Degrees of freedom 41
## P-value (Chi-square) 0.002
##
## Model Test Baseline Model:
##
## Test statistic 730.654
## Degrees of freedom 55
## P-value 0.000
##
## User Model versus Baseline Model:
##
## Comparative Fit Index (CFI) 0.953
## Tucker-Lewis Index (TLI) 0.938
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) -1564.959
## Loglikelihood unrestricted model (H1) -1528.728
##
## Akaike (AIC) 3179.918
## Bayesian (BIC) 3237.855
## Sample-size adjusted Bayesian (SABIC) 3159.062
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.101
## 90 Percent confidence interval - lower 0.061
## 90 Percent confidence interval - upper 0.139
## P-value H_0: RMSEA <= 0.050 0.021
## P-value H_0: RMSEA >= 0.080 0.827
##
## Standardized Root Mean Square Residual:
##
## SRMR 0.055
##
## Goodness of Fit Index:
##
## Goodness of Fit Index (GFI) 0.933
## 90 Percent confidence interval - lower 0.879
## 90 Percent confidence interval - upper 0.976
##
## Parameter Estimates:
##
## Standard errors Standard
## Information Expected
## Information saturated (h1) model Structured
##
## Latent Variables:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## democracia1960 =~
## y1 1.000 2.201 0.845
## y2 1.354 0.175 7.755 0.000 2.980 0.760
## y3 1.044 0.150 6.961 0.000 2.298 0.705
## y4 1.300 0.138 9.412 0.000 2.860 0.860
## democracia1965 =~
## y5 1.000 2.084 0.803
## y6 1.258 0.164 7.651 0.000 2.623 0.783
## y7 1.282 0.158 8.137 0.000 2.673 0.819
## y8 1.310 0.154 8.529 0.000 2.730 0.847
## industria1960 =~
## x1 1.000 0.669 0.920
## x2 2.182 0.139 15.714 0.000 1.461 0.973
## x3 1.819 0.152 11.956 0.000 1.218 0.872
##
## Regressions:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## democracia1960 ~
## industria1960 1.474 0.392 3.763 0.000 0.448 0.448
## democracia1965 ~
## industria1960 0.453 0.220 2.064 0.039 0.146 0.146
## democracia1960 0.864 0.113 7.671 0.000 0.913 0.913
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .y1 1.942 0.395 4.910 0.000 1.942 0.286
## .y2 6.490 1.185 5.479 0.000 6.490 0.422
## .y3 5.340 0.943 5.662 0.000 5.340 0.503
## .y4 2.887 0.610 4.731 0.000 2.887 0.261
## .y5 2.390 0.447 5.351 0.000 2.390 0.355
## .y6 4.343 0.796 5.456 0.000 4.343 0.387
## .y7 3.510 0.668 5.252 0.000 3.510 0.329
## .y8 2.940 0.586 5.019 0.000 2.940 0.283
## .x1 0.082 0.020 4.180 0.000 0.082 0.154
## .x2 0.118 0.070 1.689 0.091 0.118 0.053
## .x3 0.467 0.090 5.174 0.000 0.467 0.240
## .democracia1960 3.872 0.893 4.338 0.000 0.799 0.799
## .democracia1965 0.115 0.200 0.575 0.565 0.026 0.026
## industria1960 0.448 0.087 5.169 0.000 1.000 1.000
lavaanPlot(fit2, coefs = TRUE, cov = TRUE)
La democracia cuenta con 8 derechos y libertades políticas:
En el libro “Why nations fail?” los autores concluyen que son las instituciones del país las que determinan el éxito o el fracaso.
El modelo apunta en esa misma dirección. La industrialización de 1960 empuja el nivel de democracia de ese mismo año y también el de 1965, pero el efecto directo sobre 1965 es chico. Lo que más pesa para explicar la democracia de 1965 es la democracia que el país ya tenía en 1960. En otras palabras, el ingreso y la industria abren la puerta, lo que mantiene el nivel son las instituciones que ya estaban puestas.
Las cargas de los tres constructos son altas y significativas, así que las cuatro preguntas de cada año sí miden lo mismo y las tres variables económicas sí miden industrialización. El ajuste se queda a medias. El CFI de 0.95 está bien, pero la chi cuadrada sale significativa y el RMSEA de 0.10 queda arriba de lo aceptable, así que hay algo que el modelo no está recogiendo. La explicación más razonable es que son las mismas cuatro preguntas aplicadas en 1960 y en 1965, así que los errores de una misma pregunta en los dos años se parecen entre sí y el modelo no tiene cómo representarlo.
La base de datos reúne las respuestas de colaboradores a tres instrumentos distintos, medidos todos en escala tipo Likert.
El primero mide las experiencias de recuperación, es decir, qué tanto percibe una persona que lo que hace fuera del horario laboral le devuelve la energía para aguantar el estrés y las presiones del trabajo. Se divide en cuatro dominios:
El segundo mide la energía recuperada:
El tercero mide el engagement laboral, entendido como un estado mental positivo y satisfactorio frente al trabajo:
Además de los ítems, la base trae tres variables de control: GEN, EXPER y EDAD.
# file.choose()
df3 <- read_excel("C:/Users/focus/Downloads/Datos_SEM_Eng.xlsx")
# Los nombres de las columnas traen un espacio al final y lavaan no los reconoce así
names(df3) <- trimws(names(df3))
summary(df3)
## ID GEN EXPER EDAD
## Min. : 1.0 Min. :0.0000 Min. : 0.00 Min. :22.00
## 1st Qu.: 56.5 1st Qu.:0.0000 1st Qu.:15.00 1st Qu.:37.50
## Median :112.0 Median :1.0000 Median :20.00 Median :44.00
## Mean :112.0 Mean :0.5919 Mean :21.05 Mean :43.95
## 3rd Qu.:167.5 3rd Qu.:1.0000 3rd Qu.:27.50 3rd Qu.:51.00
## Max. :223.0 Max. :1.0000 Max. :50.00 Max. :72.00
## RPD01 RPD02 RPD03 RPD05 RPD06
## Min. :1.000 Min. :1.00 Min. :1.000 Min. :1.000 Min. :1.000
## 1st Qu.:3.000 1st Qu.:3.00 1st Qu.:3.000 1st Qu.:3.000 1st Qu.:3.000
## Median :5.000 Median :4.00 Median :5.000 Median :5.000 Median :5.000
## Mean :4.596 Mean :4.09 Mean :4.789 Mean :4.327 Mean :4.798
## 3rd Qu.:6.000 3rd Qu.:6.00 3rd Qu.:7.000 3rd Qu.:6.000 3rd Qu.:7.000
## Max. :7.000 Max. :7.00 Max. :7.000 Max. :7.000 Max. :7.000
## RPD07 RPD08 RPD09 RPD10
## Min. :1.000 Min. :1.000 Min. :1.000 Min. :1.000
## 1st Qu.:2.000 1st Qu.:3.000 1st Qu.:3.000 1st Qu.:2.500
## Median :4.000 Median :5.000 Median :5.000 Median :5.000
## Mean :3.794 Mean :4.735 Mean :4.466 Mean :4.435
## 3rd Qu.:5.500 3rd Qu.:7.000 3rd Qu.:6.000 3rd Qu.:6.000
## Max. :7.000 Max. :7.000 Max. :7.000 Max. :7.000
## RRE02 RRE03 RRE04 RRE05 RRE06
## Min. :1.000 Min. :1.000 Min. :1.000 Min. :1.000 Min. :1.0
## 1st Qu.:5.000 1st Qu.:5.000 1st Qu.:5.000 1st Qu.:5.000 1st Qu.:4.0
## Median :6.000 Median :6.000 Median :6.000 Median :6.000 Median :6.0
## Mean :5.691 Mean :5.534 Mean :5.668 Mean :5.623 Mean :5.3
## 3rd Qu.:7.000 3rd Qu.:7.000 3rd Qu.:7.000 3rd Qu.:7.000 3rd Qu.:7.0
## Max. :7.000 Max. :7.000 Max. :7.000 Max. :7.000 Max. :7.0
## RRE07 RRE10 RMA02 RMA03
## Min. :1.000 Min. :1.000 Min. :1.000 Min. :1.000
## 1st Qu.:4.000 1st Qu.:5.000 1st Qu.:3.000 1st Qu.:3.000
## Median :6.000 Median :6.000 Median :4.000 Median :5.000
## Mean :5.305 Mean :5.664 Mean :4.215 Mean :4.377
## 3rd Qu.:7.000 3rd Qu.:7.000 3rd Qu.:6.000 3rd Qu.:6.000
## Max. :7.000 Max. :7.000 Max. :7.000 Max. :7.000
## RMA04 RMA05 RMA06 RMA07
## Min. :1.000 Min. :1.000 Min. :1.000 Min. :1.000
## 1st Qu.:3.000 1st Qu.:3.000 1st Qu.:5.000 1st Qu.:4.000
## Median :5.000 Median :5.000 Median :6.000 Median :5.000
## Mean :4.686 Mean :4.637 Mean :5.511 Mean :4.767
## 3rd Qu.:6.000 3rd Qu.:6.000 3rd Qu.:7.000 3rd Qu.:6.000
## Max. :7.000 Max. :7.000 Max. :7.000 Max. :7.000
## RMA08 RMA09 RMA10 RCO02 RCO03
## Min. :1.000 Min. :1.000 Min. :1.00 Min. :1.000 Min. :1.000
## 1st Qu.:4.000 1st Qu.:3.000 1st Qu.:3.00 1st Qu.:5.000 1st Qu.:5.000
## Median :5.000 Median :5.000 Median :5.00 Median :6.000 Median :6.000
## Mean :4.942 Mean :4.614 Mean :4.43 Mean :5.336 Mean :5.574
## 3rd Qu.:6.500 3rd Qu.:6.000 3rd Qu.:6.00 3rd Qu.:7.000 3rd Qu.:7.000
## Max. :7.000 Max. :7.000 Max. :7.00 Max. :7.000 Max. :7.000
## RCO04 RCO05 RCO06 RCO07
## Min. :1.000 Min. :1.000 Min. :1.000 Min. :1.000
## 1st Qu.:5.000 1st Qu.:5.000 1st Qu.:5.000 1st Qu.:5.000
## Median :6.000 Median :6.000 Median :6.000 Median :6.000
## Mean :5.704 Mean :5.668 Mean :5.619 Mean :5.632
## 3rd Qu.:7.000 3rd Qu.:7.000 3rd Qu.:7.000 3rd Qu.:7.000
## Max. :7.000 Max. :7.000 Max. :7.000 Max. :7.000
## EN01 EN02 EN04 EN05
## Min. :1.000 Min. :1.000 Min. :1.000 Min. :1.000
## 1st Qu.:3.000 1st Qu.:4.000 1st Qu.:4.000 1st Qu.:4.000
## Median :5.000 Median :6.000 Median :5.000 Median :5.000
## Mean :4.717 Mean :5.004 Mean :4.883 Mean :4.928
## 3rd Qu.:6.000 3rd Qu.:7.000 3rd Qu.:6.000 3rd Qu.:6.000
## Max. :7.000 Max. :7.000 Max. :7.000 Max. :7.000
## EN06 EN07 EN08 EVI01
## Min. :1.000 Min. :1.000 Min. :1.000 Min. :0.000
## 1st Qu.:3.000 1st Qu.:3.000 1st Qu.:4.000 1st Qu.:4.000
## Median :5.000 Median :5.000 Median :5.000 Median :5.000
## Mean :4.767 Mean :4.578 Mean :4.776 Mean :5.013
## 3rd Qu.:6.000 3rd Qu.:6.000 3rd Qu.:6.000 3rd Qu.:6.000
## Max. :7.000 Max. :7.000 Max. :7.000 Max. :7.000
## EVI02 EVI03 EDE01 EDE02
## Min. :0.000 Min. :0.000 Min. :0.000 Min. :0.000
## 1st Qu.:4.000 1st Qu.:4.000 1st Qu.:5.000 1st Qu.:5.000
## Median :6.000 Median :6.000 Median :6.000 Median :6.000
## Mean :5.076 Mean :4.973 Mean :5.305 Mean :5.543
## 3rd Qu.:6.000 3rd Qu.:6.000 3rd Qu.:7.000 3rd Qu.:7.000
## Max. :7.000 Max. :7.000 Max. :7.000 Max. :7.000
## EDE03 EAB01 EAB02 EAB03
## Min. :0.000 Min. :0.000 Min. :0.000 Min. :0.000
## 1st Qu.:6.000 1st Qu.:5.000 1st Qu.:5.000 1st Qu.:5.000
## Median :7.000 Median :6.000 Median :6.000 Median :6.000
## Mean :6.135 Mean :5.605 Mean :5.821 Mean :5.363
## 3rd Qu.:7.000 3rd Qu.:7.000 3rd Qu.:7.000 3rd Qu.:7.000
## Max. :7.000 Max. :7.000 Max. :7.000 Max. :7.000
str(df3)
## tibble [223 × 51] (S3: tbl_df/tbl/data.frame)
## $ ID : num [1:223] 1 2 3 4 5 6 7 8 9 10 ...
## $ GEN : num [1:223] 1 1 1 1 1 0 0 1 1 1 ...
## $ EXPER: num [1:223] 22 22 30 17 23 31 26 30 15 15 ...
## $ EDAD : num [1:223] 45 44 52 41 51 52 53 48 40 38 ...
## $ RPD01: num [1:223] 5 4 7 5 7 3 5 6 4 2 ...
## $ RPD02: num [1:223] 1 4 7 5 6 4 5 7 4 3 ...
## $ RPD03: num [1:223] 3 6 7 1 7 5 4 6 4 2 ...
## $ RPD05: num [1:223] 2 5 7 1 6 4 4 7 4 3 ...
## $ RPD06: num [1:223] 3 3 7 3 7 3 5 2 6 7 ...
## $ RPD07: num [1:223] 1 2 6 5 6 5 6 5 4 1 ...
## $ RPD08: num [1:223] 3 3 7 3 7 4 6 2 5 3 ...
## $ RPD09: num [1:223] 2 4 7 2 6 4 7 4 4 2 ...
## $ RPD10: num [1:223] 4 4 7 2 6 4 7 1 6 2 ...
## $ RRE02: num [1:223] 6 6 7 6 7 5 7 5 6 7 ...
## $ RRE03: num [1:223] 6 6 7 6 7 4 7 4 4 7 ...
## $ RRE04: num [1:223] 6 6 7 6 7 4 7 4 6 7 ...
## $ RRE05: num [1:223] 6 6 7 6 7 5 7 4 6 7 ...
## $ RRE06: num [1:223] 6 6 7 6 7 4 7 4 6 7 ...
## $ RRE07: num [1:223] 6 6 7 6 7 4 7 4 6 7 ...
## $ RRE10: num [1:223] 6 6 7 6 7 4 7 4 6 7 ...
## $ RMA02: num [1:223] 4 6 4 3 4 7 5 2 6 7 ...
## $ RMA03: num [1:223] 5 6 5 4 4 7 5 1 2 7 ...
## $ RMA04: num [1:223] 5 5 6 4 4 5 5 1 4 7 ...
## $ RMA05: num [1:223] 5 5 6 4 4 6 5 3 4 7 ...
## $ RMA06: num [1:223] 6 6 7 6 5 4 5 7 6 7 ...
## $ RMA07: num [1:223] 4 6 6 5 4 5 7 4 6 7 ...
## $ RMA08: num [1:223] 5 6 4 4 4 6 6 4 2 7 ...
## $ RMA09: num [1:223] 3 5 4 3 5 4 5 2 4 7 ...
## $ RMA10: num [1:223] 7 5 5 4 5 5 6 4 3 7 ...
## $ RCO02: num [1:223] 7 7 7 5 7 6 7 7 3 7 ...
## $ RCO03: num [1:223] 7 7 7 5 7 5 7 7 3 7 ...
## $ RCO04: num [1:223] 7 7 7 6 7 4 7 7 3 7 ...
## $ RCO05: num [1:223] 7 7 7 6 7 4 7 7 3 7 ...
## $ RCO06: num [1:223] 7 7 7 6 7 4 7 7 4 7 ...
## $ RCO07: num [1:223] 5 7 7 6 7 4 7 7 7 7 ...
## $ EN01 : num [1:223] 6 6 7 4 6 4 7 7 4 7 ...
## $ EN02 : num [1:223] 7 6 7 4 6 4 7 7 4 7 ...
## $ EN04 : num [1:223] 6 6 7 4 6 4 7 6 4 7 ...
## $ EN05 : num [1:223] 5 5 7 5 6 5 7 6 4 7 ...
## $ EN06 : num [1:223] 5 5 7 5 6 3 7 5 5 7 ...
## $ EN07 : num [1:223] 5 5 7 2 6 4 7 4 4 7 ...
## $ EN08 : num [1:223] 6 5 7 5 6 4 7 4 4 7 ...
## $ EVI01: num [1:223] 6 5 7 5 6 4 7 6 6 0 ...
## $ EVI02: num [1:223] 6 5 7 6 6 4 6 5 5 1 ...
## $ EVI03: num [1:223] 6 6 6 7 6 4 6 6 7 0 ...
## $ EDE01: num [1:223] 6 6 6 5 7 6 7 7 7 1 ...
## $ EDE02: num [1:223] 7 6 7 6 7 5 7 7 7 5 ...
## $ EDE03: num [1:223] 7 7 7 7 7 5 7 7 7 6 ...
## $ EAB01: num [1:223] 7 7 7 6 7 5 7 7 7 0 ...
## $ EAB02: num [1:223] 7 7 7 6 7 5 7 2 5 1 ...
## $ EAB03: num [1:223] 6 5 6 5 6 5 7 3 5 0 ...
modelo3 <- ' # Regresiones
# Variables latentes
desapego =~ RPD01 + RPD02 + RPD03 + RPD05 + RPD06 + RPD07 + RPD08 + RPD09 + RPD10
relajacion =~ RRE02 + RRE03 + RRE04 + RRE05 + RRE06 + RRE07 + RRE10
control =~ RCO02 + RCO03 + RCO04 + RCO05 + RCO06 + RCO07
dominio =~ RMA02 + RMA03 + RMA04 + RMA05 + RMA06 + RMA07 + RMA08 + RMA09 + RMA10
'
fit3 <- cfa(modelo3, data = df3)
summary(fit3, fit.measures = TRUE, standardized = TRUE)
## lavaan 0.7-2 ended normally after 56 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 68
##
## Number of observations 223
##
## Model Test User Model:
##
## Test statistic 1215.404
## Degrees of freedom 428
## P-value (Chi-square) 0.000
##
## Model Test Baseline Model:
##
## Test statistic 7522.157
## Degrees of freedom 465
## P-value 0.000
##
## User Model versus Baseline Model:
##
## Comparative Fit Index (CFI) 0.888
## Tucker-Lewis Index (TLI) 0.879
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) -10613.334
## Loglikelihood unrestricted model (H1) -10005.632
##
## Akaike (AIC) 21362.669
## Bayesian (BIC) 21594.356
## Sample-size adjusted Bayesian (SABIC) 21378.856
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.091
## 90 Percent confidence interval - lower 0.085
## 90 Percent confidence interval - upper 0.097
## P-value H_0: RMSEA <= 0.050 0.000
## P-value H_0: RMSEA >= 0.080 0.998
##
## Standardized Root Mean Square Residual:
##
## SRMR 0.071
##
## Goodness of Fit Index:
##
## Goodness of Fit Index (GFI) 0.811
## 90 Percent confidence interval - lower 0.791
## 90 Percent confidence interval - upper 0.831
##
## Parameter Estimates:
##
## Standard errors Standard
## Information Expected
## Information saturated (h1) model Structured
##
## Latent Variables:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## desapego =~
## RPD01 1.000 1.388 0.789
## RPD02 1.204 0.081 14.786 0.000 1.670 0.857
## RPD03 1.143 0.085 13.420 0.000 1.586 0.798
## RPD05 1.310 0.086 15.269 0.000 1.818 0.877
## RPD06 1.086 0.088 12.282 0.000 1.507 0.745
## RPD07 1.227 0.085 14.451 0.000 1.702 0.843
## RPD08 1.163 0.086 13.487 0.000 1.614 0.801
## RPD09 1.315 0.087 15.175 0.000 1.825 0.873
## RPD10 1.345 0.088 15.290 0.000 1.866 0.878
## relajacion =~
## RRE02 1.000 1.275 0.850
## RRE03 1.120 0.065 17.268 0.000 1.427 0.871
## RRE04 1.024 0.058 17.732 0.000 1.306 0.883
## RRE05 1.055 0.056 18.798 0.000 1.345 0.910
## RRE06 1.243 0.074 16.857 0.000 1.585 0.859
## RRE07 1.115 0.071 15.687 0.000 1.422 0.824
## RRE10 0.815 0.067 12.135 0.000 1.038 0.698
## control =~
## RCO02 1.000 1.631 0.855
## RCO03 0.948 0.049 19.230 0.000 1.546 0.912
## RCO04 0.795 0.044 18.125 0.000 1.297 0.886
## RCO05 0.817 0.043 18.981 0.000 1.332 0.906
## RCO06 0.834 0.046 18.247 0.000 1.360 0.889
## RCO07 0.834 0.046 18.078 0.000 1.361 0.884
## dominio =~
## RMA02 1.000 1.406 0.729
## RMA03 1.155 0.096 12.060 0.000 1.624 0.799
## RMA04 1.179 0.089 13.267 0.000 1.659 0.874
## RMA05 1.141 0.087 13.049 0.000 1.604 0.860
## RMA06 0.647 0.075 8.618 0.000 0.911 0.581
## RMA07 1.104 0.085 13.050 0.000 1.552 0.860
## RMA08 1.109 0.085 12.985 0.000 1.560 0.856
## RMA09 1.030 0.084 12.251 0.000 1.448 0.811
## RMA10 1.056 0.088 12.039 0.000 1.486 0.798
##
## Covariances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## desapego ~~
## relajacion 1.155 0.164 7.023 0.000 0.653 0.653
## control 1.319 0.200 6.584 0.000 0.583 0.583
## dominio 0.696 0.155 4.477 0.000 0.357 0.357
## relajacion ~~
## control 1.483 0.195 7.610 0.000 0.713 0.713
## dominio 0.969 0.159 6.085 0.000 0.540 0.540
## control ~~
## dominio 1.221 0.202 6.047 0.000 0.532 0.532
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .RPD01 1.168 0.119 9.778 0.000 1.168 0.378
## .RPD02 1.005 0.109 9.240 0.000 1.005 0.265
## .RPD03 1.434 0.147 9.728 0.000 1.434 0.363
## .RPD05 0.989 0.110 8.969 0.000 0.989 0.230
## .RPD06 1.817 0.182 9.968 0.000 1.817 0.444
## .RPD07 1.177 0.125 9.391 0.000 1.177 0.289
## .RPD08 1.454 0.150 9.710 0.000 1.454 0.358
## .RPD09 1.035 0.115 9.028 0.000 1.035 0.237
## .RPD10 1.033 0.115 8.956 0.000 1.033 0.229
## .RRE02 0.624 0.067 9.269 0.000 0.624 0.277
## .RRE03 0.651 0.072 9.005 0.000 0.651 0.242
## .RRE04 0.481 0.055 8.798 0.000 0.481 0.220
## .RRE05 0.373 0.046 8.147 0.000 0.373 0.171
## .RRE06 0.891 0.097 9.162 0.000 0.891 0.262
## .RRE07 0.953 0.100 9.511 0.000 0.953 0.320
## .RRE10 1.136 0.113 10.092 0.000 1.136 0.513
## .RCO02 0.980 0.105 9.375 0.000 0.980 0.269
## .RCO03 0.482 0.057 8.379 0.000 0.482 0.168
## .RCO04 0.463 0.052 8.967 0.000 0.463 0.216
## .RCO05 0.385 0.045 8.536 0.000 0.385 0.178
## .RCO06 0.493 0.055 8.915 0.000 0.493 0.210
## .RCO07 0.516 0.057 8.987 0.000 0.516 0.218
## .RMA02 1.742 0.175 9.934 0.000 1.742 0.468
## .RMA03 1.489 0.155 9.581 0.000 1.489 0.361
## .RMA04 0.854 0.097 8.772 0.000 0.854 0.237
## .RMA05 0.904 0.101 8.981 0.000 0.904 0.260
## .RMA06 1.627 0.158 10.279 0.000 1.627 0.662
## .RMA07 0.846 0.094 8.980 0.000 0.846 0.260
## .RMA08 0.885 0.098 9.035 0.000 0.885 0.267
## .RMA09 1.090 0.115 9.496 0.000 1.090 0.342
## .RMA10 1.258 0.131 9.590 0.000 1.258 0.363
## desapego 1.925 0.275 7.002 0.000 1.000 1.000
## relajacion 1.625 0.207 7.845 0.000 1.000 1.000
## control 2.660 0.335 7.930 0.000 1.000 1.000
## dominio 1.978 0.317 6.241 0.000 1.000 1.000
lavaanPlot(fit3, coefs = TRUE, cov = TRUE)
modelo4 <- ' # Regresiones
# Variables latentes
energia =~ EN01 + EN02 + EN04 + EN05 + EN06 + EN07 + EN08
# Varianzas y covarianzas
# Intercepto
'
fit4 <- cfa(modelo4, data = df3)
summary(fit4, fit.measures = TRUE, standardized = TRUE)
## lavaan 0.7-2 ended normally after 32 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 14
##
## Number of observations 223
##
## Model Test User Model:
##
## Test statistic 47.222
## Degrees of freedom 14
## P-value (Chi-square) 0.000
##
## Model Test Baseline Model:
##
## Test statistic 2324.436
## Degrees of freedom 21
## P-value 0.000
##
## User Model versus Baseline Model:
##
## Comparative Fit Index (CFI) 0.986
## Tucker-Lewis Index (TLI) 0.978
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) -2017.154
## Loglikelihood unrestricted model (H1) -1993.543
##
## Akaike (AIC) 4062.308
## Bayesian (BIC) 4110.008
## Sample-size adjusted Bayesian (SABIC) 4065.641
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.103
## 90 Percent confidence interval - lower 0.072
## 90 Percent confidence interval - upper 0.136
## P-value H_0: RMSEA <= 0.050 0.004
## P-value H_0: RMSEA >= 0.080 0.892
##
## Standardized Root Mean Square Residual:
##
## SRMR 0.012
##
## Goodness of Fit Index:
##
## Goodness of Fit Index (GFI) 0.959
## 90 Percent confidence interval - lower 0.931
## 90 Percent confidence interval - upper 0.980
##
## Parameter Estimates:
##
## Standard errors Standard
## Information Expected
## Information saturated (h1) model Structured
##
## Latent Variables:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## energia =~
## EN01 1.000 1.674 0.893
## EN02 1.029 0.044 23.192 0.000 1.723 0.933
## EN04 0.999 0.044 22.583 0.000 1.672 0.924
## EN05 0.999 0.042 23.649 0.000 1.672 0.939
## EN06 0.986 0.042 23.722 0.000 1.651 0.940
## EN07 1.049 0.046 22.856 0.000 1.755 0.928
## EN08 1.036 0.043 24.173 0.000 1.734 0.946
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .EN01 0.711 0.074 9.651 0.000 0.711 0.202
## .EN02 0.444 0.049 9.012 0.000 0.444 0.130
## .EN04 0.481 0.052 9.214 0.000 0.481 0.147
## .EN05 0.375 0.042 8.830 0.000 0.375 0.118
## .EN06 0.359 0.041 8.798 0.000 0.359 0.116
## .EN07 0.499 0.055 9.129 0.000 0.499 0.139
## .EN08 0.353 0.041 8.580 0.000 0.353 0.105
## energia 2.801 0.327 8.565 0.000 1.000 1.000
lavaanPlot(fit4, coefs = TRUE, cov = TRUE)
modelo5 <- ' # Regresiones
# Variables latentes
vigor =~ EVI01 + EVI02 + EVI03
dedicacion =~ EDE01 + EDE02 + EDE03
absorcion =~ EAB01 + EAB02 + EAB03
# Varianzas y covarianzas
# Intercepto
'
fit5 <- cfa(modelo5, data = df3)
summary(fit5, fit.measures = TRUE, standardized = TRUE)
## lavaan 0.7-2 ended normally after 44 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 21
##
## Number of observations 223
##
## Model Test User Model:
##
## Test statistic 271.168
## Degrees of freedom 24
## P-value (Chi-square) 0.000
##
## Model Test Baseline Model:
##
## Test statistic 2254.214
## Degrees of freedom 36
## P-value 0.000
##
## User Model versus Baseline Model:
##
## Comparative Fit Index (CFI) 0.889
## Tucker-Lewis Index (TLI) 0.833
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) -2965.082
## Loglikelihood unrestricted model (H1) -2829.498
##
## Akaike (AIC) 5972.164
## Bayesian (BIC) 6043.715
## Sample-size adjusted Bayesian (SABIC) 5977.163
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.215
## 90 Percent confidence interval - lower 0.192
## 90 Percent confidence interval - upper 0.238
## P-value H_0: RMSEA <= 0.050 0.000
## P-value H_0: RMSEA >= 0.080 1.000
##
## Standardized Root Mean Square Residual:
##
## SRMR 0.070
##
## Goodness of Fit Index:
##
## Goodness of Fit Index (GFI) 0.810
## 90 Percent confidence interval - lower 0.775
## 90 Percent confidence interval - upper 0.843
##
## Parameter Estimates:
##
## Standard errors Standard
## Information Expected
## Information saturated (h1) model Structured
##
## Latent Variables:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## vigor =~
## EVI01 1.000 1.684 0.967
## EVI02 0.986 0.028 35.166 0.000 1.660 0.962
## EVI03 0.995 0.049 20.456 0.000 1.675 0.835
## dedicacion =~
## EDE01 1.000 1.857 0.946
## EDE02 0.914 0.035 26.126 0.000 1.698 0.924
## EDE03 0.583 0.037 15.913 0.000 1.082 0.765
## absorcion =~
## EAB01 1.000 1.610 0.918
## EAB02 0.708 0.051 13.891 0.000 1.140 0.750
## EAB03 0.732 0.063 11.644 0.000 1.179 0.669
##
## Covariances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## vigor ~~
## dedicacion 2.754 0.293 9.404 0.000 0.881 0.881
## absorcion 2.125 0.247 8.600 0.000 0.784 0.784
## dedicacion ~~
## absorcion 2.728 0.293 9.311 0.000 0.913 0.913
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .EVI01 0.200 0.040 4.947 0.000 0.200 0.066
## .EVI02 0.220 0.041 5.437 0.000 0.220 0.074
## .EVI03 1.220 0.125 9.772 0.000 1.220 0.303
## .EDE01 0.405 0.066 6.130 0.000 0.405 0.105
## .EDE02 0.495 0.066 7.521 0.000 0.495 0.146
## .EDE03 0.829 0.084 9.869 0.000 0.829 0.415
## .EAB01 0.481 0.100 4.816 0.000 0.481 0.157
## .EAB02 1.010 0.109 9.271 0.000 1.010 0.437
## .EAB03 1.711 0.175 9.764 0.000 1.711 0.552
## vigor 2.836 0.289 9.811 0.000 1.000 1.000
## dedicacion 3.448 0.367 9.399 0.000 1.000 1.000
## absorcion 2.592 0.301 8.615 0.000 1.000 1.000
lavaanPlot(fit5, coefs = TRUE, cov = TRUE)
El análisis de senderos trabaja con variables observadas, así que primero se construyen los puntajes de cada escala promediando sus ítems. Las cuatro dimensiones de recuperación se promedian entre sí para formar el puntaje general de experiencias de recuperación, y vigor, dedicación y absorción se promedian para formar engagement.
puntaje <- function(prefijo) rowMeans(df3[, grep(paste0("^", prefijo), names(df3))], na.rm = TRUE)
df3$desapego_p <- puntaje("RPD")
df3$relajacion_p <- puntaje("RRE")
df3$dominio_p <- puntaje("RMA")
df3$control_p <- puntaje("RCO")
df3$energia_p <- puntaje("EN0")
df3$recuperacion <- rowMeans(df3[, c("desapego_p", "relajacion_p", "dominio_p", "control_p")])
df3$engagement <- rowMeans(df3[, grep("^EVI|^EDE|^EAB", names(df3))], na.rm = TRUE)
Se plantea la mediación parcial: la recuperación llega al engagement por dos caminos, uno indirecto a través de la energía recuperada y otro directo.
modelo6 <- ' # Regresiones
energia_p ~ a*recuperacion
engagement ~ b*energia_p + c*recuperacion
# Efectos
indirecto := a*b
directo := c
total := c + a*b
'
fit6 <- sem(modelo6, data = df3)
summary(fit6, fit.measures = TRUE, standardized = TRUE)
## lavaan 0.7-2 ended normally after 1 iteration
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 5
##
## Number of observations 223
##
## Model Test User Model:
##
## Test statistic 0.000
## Degrees of freedom 0
##
## Model Test Baseline Model:
##
## Test statistic 296.008
## Degrees of freedom 3
## P-value 0.000
##
## User Model versus Baseline Model:
##
## Comparative Fit Index (CFI) 1.000
## Tucker-Lewis Index (TLI) 1.000
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) -692.401
## Loglikelihood unrestricted model (H1) -692.401
##
## Akaike (AIC) 1394.803
## Bayesian (BIC) 1411.839
## Sample-size adjusted Bayesian (SABIC) 1395.993
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.000
## 90 Percent confidence interval - lower 0.000
## 90 Percent confidence interval - upper 0.000
## P-value H_0: RMSEA <= 0.050 NA
## P-value H_0: RMSEA >= 0.080 NA
##
## Standardized Root Mean Square Residual:
##
## SRMR 0.000
##
## Goodness of Fit Index:
##
## Goodness of Fit Index (GFI) 1.000
## 90 Percent confidence interval - lower 1.000
## 90 Percent confidence interval - upper 1.000
##
## Parameter Estimates:
##
## Standard errors Standard
## Information Expected
## Information saturated (h1) model Structured
##
## Regressions:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## energia_p ~
## recuperacn (a) 1.062 0.061 17.408 0.000 1.062 0.759
## engagement ~
## energia_p (b) 0.418 0.070 5.966 0.000 0.418 0.485
## recuperacn (c) 0.187 0.098 1.914 0.056 0.187 0.156
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .energia_p 1.249 0.118 10.559 0.000 1.249 0.424
## .engagement 1.366 0.129 10.559 0.000 1.366 0.626
##
## Defined Parameters:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## indirecto 0.444 0.079 5.644 0.000 0.444 0.368
## directo 0.187 0.098 1.914 0.056 0.187 0.156
## total 0.631 0.069 9.189 0.000 0.631 0.524
lavaanPlot(fit6, coefs = TRUE, cov = TRUE)
Este modelo está saturado, tiene cero grados de libertad, así que sus índices de ajuste no informan nada. Para poder evaluarlos se estima también la versión de mediación total, quitando el camino directo.
modelo7 <- ' # Regresiones
energia_p ~ a*recuperacion
engagement ~ b*energia_p
# Efectos
indirecto := a*b
'
fit7 <- sem(modelo7, data = df3)
summary(fit7, fit.measures = TRUE, standardized = TRUE)
## lavaan 0.7-2 ended normally after 1 iteration
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 4
##
## Number of observations 223
##
## Model Test User Model:
##
## Test statistic 3.633
## Degrees of freedom 1
## P-value (Chi-square) 0.057
##
## Model Test Baseline Model:
##
## Test statistic 296.008
## Degrees of freedom 3
## P-value 0.000
##
## User Model versus Baseline Model:
##
## Comparative Fit Index (CFI) 0.991
## Tucker-Lewis Index (TLI) 0.973
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) -694.218
## Loglikelihood unrestricted model (H1) -692.401
##
## Akaike (AIC) 1396.436
## Bayesian (BIC) 1410.065
## Sample-size adjusted Bayesian (SABIC) 1397.388
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.109
## 90 Percent confidence interval - lower 0.000
## 90 Percent confidence interval - upper 0.238
## P-value H_0: RMSEA <= 0.050 0.127
## P-value H_0: RMSEA >= 0.080 0.761
##
## Standardized Root Mean Square Residual:
##
## SRMR 0.027
##
## Goodness of Fit Index:
##
## Goodness of Fit Index (GFI) 1.000
## 90 Percent confidence interval - lower 1.000
## 90 Percent confidence interval - upper 1.000
##
## Parameter Estimates:
##
## Standard errors Standard
## Information Expected
## Information saturated (h1) model Structured
##
## Regressions:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## energia_p ~
## recuperacn (a) 1.062 0.061 17.408 0.000 1.062 0.759
## engagement ~
## energia_p (b) 0.519 0.046 11.302 0.000 0.519 0.603
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .energia_p 1.249 0.118 10.559 0.000 1.249 0.424
## .engagement 1.388 0.131 10.559 0.000 1.388 0.636
##
## Defined Parameters:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## indirecto 0.551 0.058 9.480 0.000 0.551 0.458
lavaanPlot(fit7, coefs = TRUE, cov = TRUE)
anova(fit7, fit6)
##
## Chi-Squared Difference Test
##
## Df AIC BIC Chisq Chisq diff RMSEA Df diff Pr(>Chisq)
## fit6 0 1394.8 1411.8 0.0000
## fit7 1 1396.4 1410.1 3.6334 3.6334 0.10867 1 0.05663 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
El modelo de senderos usa promedios y da por hecho que cada escala mide bien lo que dice medir. El modelo de medición pone eso a prueba: cada constructo vuelve a ser latente, se estima a partir de sus ítems y se deja correlacionar libremente con los demás, sin imponer todavía ninguna dirección entre ellos.
modelo8 <- ' # Regresiones
# Variables latentes
desapego =~ RPD01 + RPD02 + RPD03 + RPD05 + RPD06 + RPD07 + RPD08 + RPD09 + RPD10
relajacion =~ RRE02 + RRE03 + RRE04 + RRE05 + RRE06 + RRE07 + RRE10
control =~ RCO02 + RCO03 + RCO04 + RCO05 + RCO06 + RCO07
dominio =~ RMA02 + RMA03 + RMA04 + RMA05 + RMA06 + RMA07 + RMA08 + RMA09 + RMA10
energia =~ EN01 + EN02 + EN04 + EN05 + EN06 + EN07 + EN08
vigor =~ EVI01 + EVI02 + EVI03
dedicacion =~ EDE01 + EDE02 + EDE03
absorcion =~ EAB01 + EAB02 + EAB03
# Varianzas y covarianzas
# Intercepto
'
fit8 <- cfa(modelo8, data = df3)
summary(fit8, fit.measures = TRUE, standardized = TRUE)
## lavaan 0.7-2 ended normally after 99 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 122
##
## Number of observations 223
##
## Model Test User Model:
##
## Test statistic 2420.954
## Degrees of freedom 1006
## P-value (Chi-square) 0.000
##
## Model Test Baseline Model:
##
## Test statistic 13350.303
## Degrees of freedom 1081
## P-value 0.000
##
## User Model versus Baseline Model:
##
## Comparative Fit Index (CFI) 0.885
## Tucker-Lewis Index (TLI) 0.876
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) -15414.402
## Loglikelihood unrestricted model (H1) -14203.926
##
## Akaike (AIC) 31072.805
## Bayesian (BIC) 31488.480
## Sample-size adjusted Bayesian (SABIC) 31101.846
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.079
## 90 Percent confidence interval - lower 0.075
## 90 Percent confidence interval - upper 0.083
## P-value H_0: RMSEA <= 0.050 0.000
## P-value H_0: RMSEA >= 0.080 0.410
##
## Standardized Root Mean Square Residual:
##
## SRMR 0.065
##
## Goodness of Fit Index:
##
## Goodness of Fit Index (GFI) 0.796
## 90 Percent confidence interval - lower 0.779
## 90 Percent confidence interval - upper 0.813
##
## Parameter Estimates:
##
## Standard errors Standard
## Information Expected
## Information saturated (h1) model Structured
##
## Latent Variables:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## desapego =~
## RPD01 1.000 1.389 0.790
## RPD02 1.204 0.081 14.852 0.000 1.672 0.859
## RPD03 1.144 0.085 13.491 0.000 1.590 0.800
## RPD05 1.310 0.085 15.350 0.000 1.821 0.879
## RPD06 1.081 0.088 12.243 0.000 1.501 0.742
## RPD07 1.226 0.085 14.503 0.000 1.703 0.844
## RPD08 1.157 0.086 13.448 0.000 1.608 0.798
## RPD09 1.313 0.086 15.206 0.000 1.824 0.873
## RPD10 1.341 0.088 15.303 0.000 1.863 0.877
## relajacion =~
## RRE02 1.000 1.274 0.850
## RRE03 1.121 0.065 17.283 0.000 1.429 0.871
## RRE04 1.022 0.058 17.636 0.000 1.302 0.881
## RRE05 1.054 0.056 18.741 0.000 1.343 0.910
## RRE06 1.244 0.074 16.861 0.000 1.586 0.860
## RRE07 1.119 0.071 15.753 0.000 1.426 0.827
## RRE10 0.817 0.067 12.166 0.000 1.041 0.699
## control =~
## RCO02 1.000 1.631 0.855
## RCO03 0.945 0.049 19.122 0.000 1.541 0.909
## RCO04 0.794 0.044 18.063 0.000 1.294 0.884
## RCO05 0.815 0.043 18.912 0.000 1.329 0.905
## RCO06 0.838 0.045 18.428 0.000 1.367 0.893
## RCO07 0.837 0.046 18.209 0.000 1.365 0.887
## dominio =~
## RMA02 1.000 1.407 0.729
## RMA03 1.152 0.096 12.041 0.000 1.621 0.798
## RMA04 1.179 0.089 13.271 0.000 1.658 0.873
## RMA05 1.140 0.087 13.048 0.000 1.604 0.860
## RMA06 0.649 0.075 8.638 0.000 0.912 0.582
## RMA07 1.103 0.085 13.057 0.000 1.552 0.860
## RMA08 1.110 0.085 12.997 0.000 1.561 0.857
## RMA09 1.030 0.084 12.267 0.000 1.450 0.812
## RMA10 1.057 0.088 12.052 0.000 1.487 0.799
## energia =~
## EN01 1.000 1.680 0.897
## EN02 1.026 0.044 23.552 0.000 1.724 0.933
## EN04 0.996 0.043 22.926 0.000 1.674 0.925
## EN05 0.994 0.042 23.900 0.000 1.670 0.938
## EN06 0.981 0.041 23.928 0.000 1.648 0.938
## EN07 1.044 0.045 23.111 0.000 1.755 0.927
## EN08 1.031 0.042 24.446 0.000 1.732 0.945
## vigor =~
## EVI01 1.000 1.691 0.971
## EVI02 0.978 0.027 35.884 0.000 1.653 0.958
## EVI03 0.990 0.048 20.672 0.000 1.675 0.835
## dedicacion =~
## EDE01 1.000 1.858 0.946
## EDE02 0.915 0.035 26.256 0.000 1.699 0.924
## EDE03 0.581 0.037 15.860 0.000 1.080 0.763
## absorcion =~
## EAB01 1.000 1.614 0.921
## EAB02 0.704 0.051 13.896 0.000 1.136 0.748
## EAB03 0.728 0.063 11.641 0.000 1.175 0.667
##
## Covariances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## desapego ~~
## relajacion 1.155 0.164 7.022 0.000 0.652 0.652
## control 1.321 0.201 6.588 0.000 0.583 0.583
## dominio 0.697 0.156 4.477 0.000 0.357 0.357
## energia 1.386 0.204 6.785 0.000 0.594 0.594
## vigor 1.051 0.186 5.635 0.000 0.447 0.447
## dedicacion 1.091 0.205 5.324 0.000 0.423 0.423
## absorcion 0.846 0.179 4.732 0.000 0.377 0.377
## relajacion ~~
## control 1.482 0.195 7.609 0.000 0.713 0.713
## dominio 0.970 0.159 6.092 0.000 0.541 0.541
## energia 1.372 0.188 7.290 0.000 0.641 0.641
## vigor 0.957 0.168 5.690 0.000 0.444 0.444
## dedicacion 1.036 0.187 5.548 0.000 0.438 0.438
## absorcion 0.752 0.162 4.655 0.000 0.366 0.366
## control ~~
## dominio 1.222 0.202 6.051 0.000 0.533 0.533
## energia 1.988 0.252 7.876 0.000 0.725 0.725
## vigor 1.493 0.225 6.642 0.000 0.541 0.541
## dedicacion 1.534 0.246 6.239 0.000 0.506 0.506
## absorcion 1.154 0.212 5.437 0.000 0.438 0.438
## dominio ~~
## energia 1.326 0.209 6.355 0.000 0.561 0.561
## vigor 1.008 0.191 5.290 0.000 0.424 0.424
## dedicacion 0.987 0.207 4.774 0.000 0.378 0.378
## absorcion 0.865 0.184 4.691 0.000 0.381 0.381
## energia ~~
## vigor 2.046 0.249 8.225 0.000 0.720 0.720
## dedicacion 1.849 0.259 7.134 0.000 0.593 0.593
## absorcion 1.343 0.220 6.097 0.000 0.495 0.495
## vigor ~~
## dedicacion 2.762 0.293 9.420 0.000 0.879 0.879
## absorcion 2.136 0.248 8.621 0.000 0.783 0.783
## dedicacion ~~
## absorcion 2.734 0.293 9.323 0.000 0.912 0.912
##
## Variances:
## Estimate Std.Err z-value P(>|z|) Std.lv Std.all
## .RPD01 1.162 0.119 9.778 0.000 1.162 0.376
## .RPD02 0.998 0.108 9.236 0.000 0.998 0.263
## .RPD03 1.422 0.146 9.723 0.000 1.422 0.360
## .RPD05 0.977 0.109 8.955 0.000 0.977 0.228
## .RPD06 1.835 0.184 9.982 0.000 1.835 0.449
## .RPD07 1.173 0.125 9.393 0.000 1.173 0.288
## .RPD08 1.474 0.151 9.734 0.000 1.474 0.363
## .RPD09 1.038 0.115 9.045 0.000 1.038 0.238
## .RPD10 1.042 0.116 8.985 0.000 1.042 0.231
## .RRE02 0.626 0.067 9.274 0.000 0.626 0.278
## .RRE03 0.647 0.072 8.994 0.000 0.647 0.241
## .RRE04 0.489 0.055 8.838 0.000 0.489 0.224
## .RRE05 0.377 0.046 8.177 0.000 0.377 0.173
## .RRE06 0.889 0.097 9.157 0.000 0.889 0.261
## .RRE07 0.941 0.099 9.492 0.000 0.941 0.316
## .RRE10 1.131 0.112 10.089 0.000 1.131 0.511
## .RCO02 0.980 0.104 9.397 0.000 0.980 0.269
## .RCO03 0.497 0.058 8.497 0.000 0.497 0.173
## .RCO04 0.470 0.052 9.027 0.000 0.470 0.219
## .RCO05 0.393 0.046 8.621 0.000 0.393 0.182
## .RCO06 0.475 0.054 8.869 0.000 0.475 0.203
## .RCO07 0.503 0.056 8.967 0.000 0.503 0.213
## .RMA02 1.742 0.175 9.938 0.000 1.742 0.468
## .RMA03 1.499 0.156 9.599 0.000 1.499 0.363
## .RMA04 0.855 0.097 8.788 0.000 0.855 0.237
## .RMA05 0.907 0.101 9.000 0.000 0.907 0.261
## .RMA06 1.624 0.158 10.280 0.000 1.624 0.661
## .RMA07 0.846 0.094 8.992 0.000 0.846 0.260
## .RMA08 0.883 0.098 9.042 0.000 0.883 0.266
## .RMA09 1.086 0.114 9.499 0.000 1.086 0.341
## .RMA10 1.255 0.131 9.594 0.000 1.255 0.362
## .EN01 0.689 0.071 9.662 0.000 0.689 0.196
## .EN02 0.439 0.048 9.070 0.000 0.439 0.129
## .EN04 0.475 0.051 9.263 0.000 0.475 0.145
## .EN05 0.380 0.043 8.944 0.000 0.380 0.120
## .EN06 0.368 0.041 8.933 0.000 0.368 0.119
## .EN07 0.502 0.054 9.210 0.000 0.502 0.140
## .EN08 0.358 0.041 8.712 0.000 0.358 0.107
## .EVI01 0.176 0.036 4.891 0.000 0.176 0.058
## .EVI02 0.243 0.038 6.327 0.000 0.243 0.082
## .EVI03 1.221 0.124 9.826 0.000 1.221 0.303
## .EDE01 0.403 0.065 6.155 0.000 0.403 0.104
## .EDE02 0.492 0.065 7.542 0.000 0.492 0.146
## .EDE03 0.834 0.084 9.885 0.000 0.834 0.417
## .EAB01 0.469 0.098 4.771 0.000 0.469 0.153
## .EAB02 1.018 0.109 9.331 0.000 1.018 0.441
## .EAB03 1.720 0.176 9.797 0.000 1.720 0.555
## desapego 1.931 0.275 7.018 0.000 1.000 1.000
## relajacion 1.624 0.207 7.839 0.000 1.000 1.000
## control 2.660 0.335 7.931 0.000 1.000 1.000
## dominio 1.979 0.317 6.244 0.000 1.000 1.000
## energia 2.823 0.327 8.623 0.000 1.000 1.000
## vigor 2.860 0.289 9.904 0.000 1.000 1.000
## dedicacion 3.451 0.367 9.408 0.000 1.000 1.000
## absorcion 2.604 0.301 8.660 0.000 1.000 1.000
round(cbind(
Recuperacion = fitMeasures(fit3, c("chisq","df","cfi","tli","rmsea","srmr")),
Energia = fitMeasures(fit4, c("chisq","df","cfi","tli","rmsea","srmr")),
Engagement = fitMeasures(fit5, c("chisq","df","cfi","tli","rmsea","srmr")),
Medicion = fitMeasures(fit8, c("chisq","df","cfi","tli","rmsea","srmr"))
), 3)
## Recuperacion Energia Engagement Medicion
## chisq 1215.404 47.222 271.168 2420.954
## df 428.000 14.000 24.000 1006.000
## cfi 0.888 0.986 0.889 0.885
## tli 0.879 0.978 0.833 0.876
## rmsea 0.091 0.103 0.215 0.079
## srmr 0.071 0.012 0.070 0.065
Las cuatro dimensiones de recuperación se sostienen. Los ítems de desapego, relajación, dominio y control cargan cada uno en su factor y todas las cargas salen significativas, así que la escala sí distingue cuatro maneras distintas de recuperarse y no una sola. El ajuste se queda corto, el CFI ronda 0.89 y el RMSEA anda arriba de 0.09, lo cual es esperable en una escala de 31 ítems donde hay preguntas que se parecen mucho entre sí dentro de cada dimensión. Ahí es donde conviene depurar, quitando los ítems con carga más baja o dejando correlacionar los errores de las preguntas casi idénticas.
Los siete ítems de energía recuperada se agrupan en una sola dimensión sin problema. Es el modelo con mejor ajuste de los tres, con CFI de 0.986 y SRMR de 0.012, así que tratar la energía recuperada como un único constructo está bien justificado.
El engagement es el que peor se porta. Vigor, dedicación y absorción salen tan correlacionadas entre sí que el modelo de tres factores queda forzado, con un RMSEA de 0.215. En la práctica los colaboradores de esta muestra no distinguen mucho entre sentirse con energía, sentirse orgullosos y sentirse absortos, es todo lo mismo para ellos. Por eso en el análisis de senderos usar un solo puntaje de engagement no traiciona los datos.
Sobre la mediación, el resultado es claro. La recuperación predice fuerte la energía recuperada, con un coeficiente estandarizado de 0.76. La energía recuperada a su vez predice el engagement con 0.49. El efecto indirecto es de 0.37 y es significativo, mientras que el efecto directo de la recuperación sobre el engagement se queda en 0.16 con un p valor de 0.056, es decir que no alcanza a ser significativo. Del efecto total de 0.52, la mayor parte viaja por la energía recuperada.
Eso significa que descansar no sube el engagement por sí solo. Lo que lo sube es la energía que ese descanso devuelve. Un colaborador puede desconectarse el fin de semana y seguir llegando el lunes sin ganas si esa desconexión no le regresó energía. Para una organización el punto práctico es que no basta con dar el tiempo libre, hay que revisar si la gente efectivamente está recuperando energía con él.
El modelo de medición completo, con los ocho constructos correlacionados, da un RMSEA de 0.079 y un SRMR de 0.065, mejor que el de la escala de recuperación por separado. La estructura de fondo se sostiene, pero el CFI de 0.885 confirma que hay que depurar antes de darlo por bueno.
Behson, Eddy y Lorenzet publicaron en el 2000 el estudio “The Importance of the Critical Psychological States in the Job Characteristics Model: A Meta-Analytic and Structural Equations Modeling Examination”. El Modelo de Características del Puesto de Hackman y Oldham propone que cinco características del trabajo, variedad de habilidades, identidad de la tarea, significado de la tarea, autonomía y retroalimentación, no impactan directamente los resultados, sino que pasan primero por tres estados psicológicos críticos: significado experimentado del trabajo, responsabilidad experimentada por los resultados y conocimiento de los resultados.
Los autores comparan dos modelos sobre la misma matriz meta analítica:
| Indicador | Modelo 1 | Modelo 2 |
|---|---|---|
| Chi cuadrada | 124.25 con 25 gl | 12.09 con 3 gl |
| GFI | 0.91 | 0.99 |
| CFI | 0.89 | 0.98 |
| RMSEA | 0.14 | 0.16 |
| AIC | 294.48 | 80.09 |
| Senderos significativos | 12 de 14 | 7 de 15 |
| Varianza explicada en satisfacción | 42% | 37% |
| Varianza explicada en motivación | 38% | 32% |
En GFI, CFI y AIC el Modelo 2 gana claramente. El RMSEA es el único indicador donde el Modelo 1 sale mejor, y por poco.
Porque el ajuste no fue el único criterio. Los autores dicen que comparar modelos pide más que comparar razones de ajuste, y que la razonabilidad de los valores dentro del modelo y su correspondencia con la teoría pesan igual o más.
El argumento de fondo está en los senderos. En el Modelo 2, ocho de los nueve caminos que van de variedad de habilidades, identidad de la tarea y significado de la tarea hacia los resultados salieron no significativos. Leído solo, ese modelo diría que esas tres características del puesto no sirven para nada. El Modelo 1 muestra que sí sirven, pero de forma indirecta, mediadas por el significado experimentado del trabajo. La relación existe, lo que pasa es que el Modelo 2 no tiene por dónde verla.
El Modelo 1 también explica más varianza en satisfacción y en motivación, y tiene 12 de 14 senderos significativos contra 7 de 15. Es un modelo más grande, por eso el AIC lo castiga, pero es también un modelo donde casi todo lo estimado significa algo.
La consecuencia práctica es la que cierra el argumento. Si una organización rediseña puestos usando el Modelo 2 va a mover las características del trabajo esperando un resultado directo. El Modelo 1 advierte que ese rediseño no sirve de nada si el colaborador no llega a experimentar el significado, la responsabilidad y el conocimiento de los resultados. Medir solo las características del puesto lleva a intervenciones mal dirigidas.
La lección es que el ajuste mide qué tan bien reproduce el modelo la matriz de covarianzas, no qué tan bien explica el fenómeno. Un modelo más simple casi siempre va a ajustar mejor porque tiene menos que reproducir, y eso no lo vuelve más cierto.
Lo mismo aplica a lo que hice en el Ejercicio 3. La escala de engagement salió con un RMSEA de 0.215, que es malo, y la tentación es colapsar vigor, dedicación y absorción en un solo factor para que los números se vean bonitos. Antes de hacerlo hay que preguntarse si eso deja fuera algo que la teoría sí distingue. En ese caso los datos y la teoría iban en la misma dirección, así que fusionarlas fue defendible. En el caso de Behson no lo era, y por eso se quedaron con el modelo que ajustaba peor.