gif
gif

Teoría

Los Modelos de Ecuaciones Estructurales (SEM) es una técica de análisis de estadística multivariada, que permite analizar patrones complejos de relaciones entre variables, realizar comparaciones entre e intragrupos, y validar modelos teóricos y empíricos.

Ejemplo 1. Estudio de Holzinger y Swineford (1939)

Contexto

Holzinger y Swineford realizaron exámenes de habilidad mental a adolescentes de 7° y 8° de dos escuelas (Pasteur y Grand-White).

La base de datos está incluida como paquete en R, e incluye las siguientes columnas:
* sex: Género (1= male, 2= female)
* x1: Percepción visual
* x2: Juego con cubos
* x3: Juego con pastillas/ espacial
* x4: Comprensión de párrafos
* x5: Completar oraciones
* x6: Saber significados de palabras
* x7: Sumas aceleradas
* x8: Conteo acelerado de puntos
* x9: Discriminación acelerada de mayúsculas rectas y curvas

Se busca identificar las relaciones entre las habilidades visuales (x1, x2, x3), textuales (x4, x5, x6) y velocidades (x7, x8, x9) de los adolescentes.

Instalar paquetes y librerías

#install.packages("lavaan")
#install.packages("lavaanPlot")
library(lavaan)
## This is lavaan 0.6-17
## lavaan is FREE software! Please report any bugs.
library(lavaanPlot)

#Lavaan = Latent variable analysis
#Las variables latentes son las variables que no se observan, se infieren

Importar la base de datos

df1 <- HolzingerSwineford1939

Entender la base de datos

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  
##                    NA's   :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 ...

Tipos de Fórmulas

  1. Regresión (~) Variable que depende de otras.
  2. Variables latentes (=~) No se observa, se infirere.
  3. Varianzas y covarianzas (~~) Relaciones entre variables latentes y observadas (varianza entre sí misma, covariaza cuando comparas entre otras).
  4. Intercepto (~1) Valor esperado cuando las demás variables son cero.

Estructurar el modelo

modelo1 <- ' # Regresiones
            # Variables Latentes
            visual =~ x1 + x2 + x3
            textual =~ x4 + x5 + x6
            velocidad =~ x7 + x8 + x9
            # Varianza y Covarianzas
            visual ~~ textual
            textual ~~ velocidad
            velocidad ~~ visual
            # Intercepto
            '

Generar el Análisis Factorial Confirmatorio (CFA)

fit <- cfa(modelo1, df1)
summary(fit)
## lavaan 0.6.17 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
## 
## Parameter Estimates:
## 
##   Standard errors                             Standard
##   Information                                 Expected
##   Information saturated (h1) model          Structured
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)
##   visual =~                                           
##     x1                1.000                           
##     x2                0.554    0.100    5.554    0.000
##     x3                0.729    0.109    6.685    0.000
##   textual =~                                          
##     x4                1.000                           
##     x5                1.113    0.065   17.014    0.000
##     x6                0.926    0.055   16.703    0.000
##   velocidad =~                                        
##     x7                1.000                           
##     x8                1.180    0.165    7.152    0.000
##     x9                1.082    0.151    7.155    0.000
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|)
##   visual ~~                                           
##     textual           0.408    0.074    5.552    0.000
##   textual ~~                                          
##     velocidad         0.173    0.049    3.518    0.000
##   visual ~~                                           
##     velocidad         0.262    0.056    4.660    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)
##    .x1                0.549    0.114    4.833    0.000
##    .x2                1.134    0.102   11.146    0.000
##    .x3                0.844    0.091    9.317    0.000
##    .x4                0.371    0.048    7.779    0.000
##    .x5                0.446    0.058    7.642    0.000
##    .x6                0.356    0.043    8.277    0.000
##    .x7                0.799    0.081    9.823    0.000
##    .x8                0.488    0.074    6.573    0.000
##    .x9                0.566    0.071    8.003    0.000
##     visual            0.809    0.145    5.564    0.000
##     textual           0.979    0.112    8.737    0.000
##     velocidad         0.384    0.086    4.451    0.000
lavaanPlot(fit, coef= TRUE, cov=TRUE)

Ejercicio 2: Democracia Política e Industralización

Contexto

La base de datos contiene distintas mediciones sobre la democracia política e industrialización en países en desarrollo durante 1960 y 1965.

La tabla incluye los siguientes datos: * y1: Calificaciones sobre libertad de prensa en 1960 * y2: Libertad de la oposición política en 1960 * y3: Imparcialidad de elecciones en 1960 * y4: Eficacia de la legislatura electa en 1960 * y5: Calificaciones sobre libertad de prensa en 1965 * y6: Libertad de la oposición política en 1965 * y7: Imparcialidad de elecciones en 1965 * y8: Eficacia de la legislatura electa en 1965 * x1 PIB per cápita en 1960 * x2: Consumo de energía inanimada per cápita en 1960 * x3: Porcentaje de la fuerza laboral en la industria en 1960

LS0tCnRpdGxlOiAiTW9kZWxvcyBkZSBFY3VhY2lvbmVzIEVzdHJ1Y3R1cmFsZXMiCmF1dGhvcjogIlJlZ2luYSBFbnJpcXVleiAtIEEwMTcyMTQzNSIKZGF0ZTogIjIwMjQtMDItMjIiCm91dHB1dDogCiAgaHRtbF9kb2N1bWVudDoKICAgIHRvYzogVFJVRQogICAgdG9jX2Zsb2F0OiBUUlVFCiAgICBjb2RlX2Rvd25sb2FkOiBUUlVFCi0tLQoKYGBge3Igc2V0dXAsIGluY2x1ZGU9RkFMU0V9CmtuaXRyOjpvcHRzX2NodW5rJHNldChlY2hvID0gVFJVRSkKYGBgCgohW2dpZl0oYm9iLmdpZikKCiMgVGVvcsOtYQpMb3MgKipNb2RlbG9zIGRlIEVjdWFjaW9uZXMgRXN0cnVjdHVyYWxlcyAoU0VNKSoqIGVzIHVuYSB0w6ljaWNhIGRlIGFuw6FsaXNpcyBkZSBlc3RhZMOtc3RpY2EgbXVsdGl2YXJpYWRhLCBxdWUgcGVybWl0ZSBhbmFsaXphciBwYXRyb25lcyBjb21wbGVqb3MgZGUgcmVsYWNpb25lcyBlbnRyZSB2YXJpYWJsZXMsIHJlYWxpemFyIGNvbXBhcmFjaW9uZXMgZW50cmUgZSBpbnRyYWdydXBvcywgeSB2YWxpZGFyIG1vZGVsb3MgdGXDs3JpY29zIHkgZW1ww61yaWNvcy4gCgojIEVqZW1wbG8gMS4gRXN0dWRpbyBkZSBIb2x6aW5nZXIgeSBTd2luZWZvcmQgKDE5MzkpCgojIyBDb250ZXh0bwpIb2x6aW5nZXIgeSBTd2luZWZvcmQgcmVhbGl6YXJvbiBleMOhbWVuZXMgZGUgaGFiaWxpZGFkIG1lbnRhbCBhIGFkb2xlc2NlbnRlcyBkZSA3wrAgeSA4wrAgZGUgZG9zIGVzY3VlbGFzIChQYXN0ZXVyIHkgR3JhbmQtV2hpdGUpLiAgCgpMYSBiYXNlIGRlIGRhdG9zIGVzdMOhIGluY2x1aWRhIGNvbW8gcGFxdWV0ZSBlbiBSLCBlIGluY2x1eWUgbGFzIHNpZ3VpZW50ZXMgY29sdW1uYXM6ICAKKiBzZXg6IEfDqW5lcm8gKDE9IG1hbGUsIDI9IGZlbWFsZSkgICAgICAgIAoqIHgxOiBQZXJjZXBjacOzbiB2aXN1YWwgICAgICAgCiogeDI6IEp1ZWdvIGNvbiBjdWJvcyAgICAgICAKKiB4MzogSnVlZ28gY29uIHBhc3RpbGxhcy8gZXNwYWNpYWwgICAgICAgCiogeDQ6IENvbXByZW5zacOzbiBkZSBww6FycmFmb3MgICAgICAgCiogeDU6IENvbXBsZXRhciBvcmFjaW9uZXMgICAgICAgCiogeDY6IFNhYmVyIHNpZ25pZmljYWRvcyBkZSBwYWxhYnJhcyAgICAgICAgCiogeDc6IFN1bWFzIGFjZWxlcmFkYXMgICAgICAgIAoqIHg4OiBDb250ZW8gYWNlbGVyYWRvIGRlIHB1bnRvcyAgICAgICAgCiogeDk6IERpc2NyaW1pbmFjacOzbiBhY2VsZXJhZGEgZGUgbWF5w7pzY3VsYXMgcmVjdGFzIHkgY3VydmFzICAgICAgICAKClNlIGJ1c2NhIGlkZW50aWZpY2FyIGxhcyByZWxhY2lvbmVzIGVudHJlIGxhcyBoYWJpbGlkYWRlcyB2aXN1YWxlcyAoeDEsIHgyLCB4MyksIHRleHR1YWxlcyAoeDQsIHg1LCB4NikgeSB2ZWxvY2lkYWRlcyAoeDcsIHg4LCB4OSkgZGUgbG9zIGFkb2xlc2NlbnRlcy4gCgojIyBJbnN0YWxhciBwYXF1ZXRlcyB5IGxpYnJlcsOtYXMKYGBge3J9CiNpbnN0YWxsLnBhY2thZ2VzKCJsYXZhYW4iKQojaW5zdGFsbC5wYWNrYWdlcygibGF2YWFuUGxvdCIpCmxpYnJhcnkobGF2YWFuKQpsaWJyYXJ5KGxhdmFhblBsb3QpCgojTGF2YWFuID0gTGF0ZW50IHZhcmlhYmxlIGFuYWx5c2lzCiNMYXMgdmFyaWFibGVzIGxhdGVudGVzIHNvbiBsYXMgdmFyaWFibGVzIHF1ZSBubyBzZSBvYnNlcnZhbiwgc2UgaW5maWVyZW4KYGBgCgojIyBJbXBvcnRhciBsYSBiYXNlIGRlIGRhdG9zCmBgYHtyfQpkZjEgPC0gSG9semluZ2VyU3dpbmVmb3JkMTkzOQpgYGAKCiMjIEVudGVuZGVyIGxhIGJhc2UgZGUgZGF0b3MKYGBge3J9CnN1bW1hcnkoZGYxKQpzdHIoZGYxKQpgYGAKIyMgVGlwb3MgZGUgRsOzcm11bGFzCjEuIFJlZ3Jlc2nDs24gKH4pIFZhcmlhYmxlIHF1ZSBkZXBlbmRlIGRlIG90cmFzLiAgICAgICAgICAgCjIuIFZhcmlhYmxlcyBsYXRlbnRlcyAoPX4pICBObyBzZSBvYnNlcnZhLCBzZSBpbmZpcmVyZS4gICAgICAgICAgICAKMy4gVmFyaWFuemFzIHkgY292YXJpYW56YXMgKH5+KSBSZWxhY2lvbmVzIGVudHJlIHZhcmlhYmxlcyBsYXRlbnRlcyB5IG9ic2VydmFkYXMgKHZhcmlhbnphIGVudHJlIHPDrSBtaXNtYSwgY292YXJpYXphIGN1YW5kbyBjb21wYXJhcyBlbnRyZSBvdHJhcykuICAgICAgICAgCjQuIEludGVyY2VwdG8gKH4xKSBWYWxvciBlc3BlcmFkbyBjdWFuZG8gbGFzIGRlbcOhcyB2YXJpYWJsZXMgc29uIGNlcm8uICAgICAgICAKCiMjIEVzdHJ1Y3R1cmFyIGVsIG1vZGVsbwpgYGB7cn0KbW9kZWxvMSA8LSAnICMgUmVncmVzaW9uZXMKICAgICAgICAgICAgIyBWYXJpYWJsZXMgTGF0ZW50ZXMKICAgICAgICAgICAgdmlzdWFsID1+IHgxICsgeDIgKyB4MwogICAgICAgICAgICB0ZXh0dWFsID1+IHg0ICsgeDUgKyB4NgogICAgICAgICAgICB2ZWxvY2lkYWQgPX4geDcgKyB4OCArIHg5CiAgICAgICAgICAgICMgVmFyaWFuemEgeSBDb3ZhcmlhbnphcwogICAgICAgICAgICB2aXN1YWwgfn4gdGV4dHVhbAogICAgICAgICAgICB0ZXh0dWFsIH5+IHZlbG9jaWRhZAogICAgICAgICAgICB2ZWxvY2lkYWQgfn4gdmlzdWFsCiAgICAgICAgICAgICMgSW50ZXJjZXB0bwogICAgICAgICAgICAnCmBgYAoKIyMgR2VuZXJhciBlbCBBbsOhbGlzaXMgRmFjdG9yaWFsIENvbmZpcm1hdG9yaW8gKENGQSkKYGBge3J9CmZpdCA8LSBjZmEobW9kZWxvMSwgZGYxKQpzdW1tYXJ5KGZpdCkKbGF2YWFuUGxvdChmaXQsIGNvZWY9IFRSVUUsIGNvdj1UUlVFKQpgYGAKCiMgRWplcmNpY2lvIDI6IERlbW9jcmFjaWEgUG9sw610aWNhIGUgSW5kdXN0cmFsaXphY2nDs24KCiMjIENvbnRleHRvCkxhIGJhc2UgZGUgZGF0b3MgY29udGllbmUgZGlzdGludGFzIG1lZGljaW9uZXMgc29icmUgbGEgZGVtb2NyYWNpYSBwb2zDrXRpY2EgZSBpbmR1c3RyaWFsaXphY2nDs24gZW4gcGHDrXNlcyBlbiBkZXNhcnJvbGxvIGR1cmFudGUgMTk2MCB5IDE5NjUuCgpMYSB0YWJsYSBpbmNsdXllIGxvcyBzaWd1aWVudGVzIGRhdG9zOgoqIHkxOiBDYWxpZmljYWNpb25lcyBzb2JyZSBsaWJlcnRhZCBkZSBwcmVuc2EgZW4gMTk2MAoqIHkyOiBMaWJlcnRhZCBkZSBsYSBvcG9zaWNpw7NuIHBvbMOtdGljYSBlbiAxOTYwCiogeTM6IEltcGFyY2lhbGlkYWQgZGUgZWxlY2Npb25lcyBlbiAxOTYwCiogeTQ6IEVmaWNhY2lhIGRlIGxhIGxlZ2lzbGF0dXJhIGVsZWN0YSBlbiAxOTYwCiogeTU6IENhbGlmaWNhY2lvbmVzIHNvYnJlIGxpYmVydGFkIGRlIHByZW5zYSBlbiAxOTY1CiogeTY6IExpYmVydGFkIGRlIGxhIG9wb3NpY2nDs24gcG9sw610aWNhIGVuIDE5NjUKKiB5NzogSW1wYXJjaWFsaWRhZCBkZSBlbGVjY2lvbmVzIGVuIDE5NjUKKiB5ODogRWZpY2FjaWEgZGUgbGEgbGVnaXNsYXR1cmEgZWxlY3RhIGVuIDE5NjUKKiB4MSBQSUIgcGVyIGPDoXBpdGEgZW4gMTk2MAoqIHgyOiBDb25zdW1vIGRlIGVuZXJnw61hIGluYW5pbWFkYSBwZXIgY8OhcGl0YSBlbiAxOTYwCiogeDM6IFBvcmNlbnRhamUgZGUgbGEgZnVlcnphIGxhYm9yYWwgZW4gbGEgaW5kdXN0cmlhIGVuIDE5NjAKCgoKCg==