Courtney
Courtney

Reputation: 41

Unparametered Mediation paths SEM with same degree of freedom comparison

I am modeling multilevel mediation paths for my data. The idea is that a1,a2,b1, b2, c1, c2,d1, and d2 all contribute to outcome variable y (model1), and b-level, c-level, and d-level variables also affect y through affecting a-level variables (model2), and c-level, d-level vars also affect y through affected b-level to affect a-level variables (model3), so on and so forth. Through multilevel mediation, we would like to see if adding extra mediation paths would explain the outcome variable better.

The outcome variable is ordinal, it can be 3,5,7,11,and 13. All a-level variables are scores of a Likert-scale measure, ranging from 0 to 2, which can be treated as continuous. All b,c,d- level variables are demographic variables, including sex (binary), PCA scores of SES, etc.

I am using lavaan in R, this is my current code for models:

model1 <- "
y ~ a1 + a2 + b1 + b2 + c1 + c2 + d1 + d2
"

model2 <- "
y ~ a1 + a2 + b1 + b2 + c1 + c2 + d1 + d2
a1 ~ b1 + b2 + c1 + c2 + d1 + d2
a2 ~ b1 + b2 + c1 + c2 + d1 + d2 "

model3 <- "
y ~ a1 + a2 + b1 + b2 + c1 + c2 + d1 + d2
a1 ~ b1 + b2 + c1 + c2 + d1 + d2
a2 ~ b1 + b2 + c1 + c2 + d1 + d2 
b1 ~ c1 + c2 + d1 + d2
b2 ~ c1 + c2 + d1 + d2
"
...
fit_1 <- sem(model1)
fit_2 <- sem(model2)
fit_3 <- sem(model3)

anova(fit_1, fit_2)
anova(fit_1, fit_3)
anova(fit_2, fit_3)

I have three questions:

  1. Is my syntax making sense or are they doing what I specified in my text? As I can see in traditional mediation paths models, people would specify parameters like y ~ a*x1 + b*x2, etc. but that would add so much complexity to my model and I'm not sure how to approach that in my multilevel models.

  2. The model summary did suggest I have more parameters along further level models, but the degree of freedom stayed the same except for the baseline (multiple linear regression) model. Is that because I have nested models?

  3. If my syntax is doing the "correct job", how should I compare the models to see if additional mediation paths are beneficial for the model? I tried doing anova() between each level with the baseline level, as I can't use anova() between mediation layers due to the same df.

I would appreciate any suggestions.

Upvotes: 0

Views: 22

Answers (0)

Related Questions