Multifactor Specification

Structural Equation Modeling with lavaan in R

Erin Buchanan

Professor

Multifactor models

visual.model <- 'visual =~ x1 + x2 + x3 + x7 + x8 + x9'
visual.fit <- cfa(model = visual.model,
                  data = HolzingerSwineford1939)    
summary(visual.fit, standardized = TRUE, 
        fit.measures = TRUE)
User model versus baseline model:
  Comparative Fit Index (CFI)                    0.701
  Tucker-Lewis Index (TLI)                       0.502
Structural Equation Modeling with lavaan in R

Why not two small models?

visual.model <- 'visual =~ x1 + x2 + x3'
visual.fit <- cfa(model = visual.model,
                  data = HolzingerSwineford1939)    
summary(visual.fit, standardized = TRUE, 
        fit.measures = TRUE)
speed.model <- 'speed =~ x7 + x8 + x9'
speed.fit <- cfa(model = speed.model,
                 data = HolzingerSwineford1939)    
summary(speed.fit, standardized = TRUE, 
        fit.measures = TRUE)
Structural Equation Modeling with lavaan in R

Why not two small models? (2)

  Number of observations                           301

  Estimator                                         ML
  Minimum Function Test Statistic                0.000
  Degrees of freedom                                 0
  Minimum Function Value               0.0000000000000
  • Possible parameters = 3*(3+1)/2 = 6
  • Estimated parameters = 2 coefficients + 4 variances = 6
  • df = 6 - 6 = 0
Structural Equation Modeling with lavaan in R

Specify Constraints

  • Constraints set parameters to be equal
  • Gain df by estimating less numbers
  • Use words to set equality constraints
visual.model <- 'visual =~ x1 + a*x2 + a*x3'
Structural Equation Modeling with lavaan in R

Output with Constraints

visual.model <- 'visual =~ x1 + a*x2 + a*x3'
visual.fit <- cfa(model = visual.model,
                  data = HolzingerSwineford1939)    
summary(visual.fit, standardized = TRUE, 
        fit.measures = TRUE)
Latent Variables:
           Estimate Std.Err z-value P(>|z|)  Std.lv Std.all
  visual =~                                                             
    x1       1.000                           0.745    0.639
    x2  (a)  0.910   0.142   6.397   0.000   0.678    0.562
    x3  (a)  0.910   0.142   6.397   0.000   0.678    0.614
Structural Equation Modeling with lavaan in R

Specify a Multifactor Model

twofactor.model <- 'visual =~ x1 + x2 + x3 
    speed =~ x7 + x8 + x9'
twofactor.fit <- cfa(model = twofactor.model,
                     data = HolzingerSwineford1939)
summary(twofactor.fit, standardized = TRUE, 
        fit.measures = TRUE)
  Degrees of freedom                                 8
  P-value (Chi-square)                           0.000
Structural Equation Modeling with lavaan in R

Let's practice!

Structural Equation Modeling with lavaan in R

Preparing Video For Download...