# Estimating exogenous covariances worsening model fit

23 views

### Carly P

Nov 8, 2019, 5:26:58 PM11/8/19
to lavaan

Hi everyone,

I am completely stumped on something and am hoping some of you might have helpful suggestions, or might identify something I am missing. I have estimated a linear latent growth model that measures change in a measure administered at multiple time points. I am testing a mediational model in which the slope of the LGM represents the proposed mediator. The script for my model is as follows:

model1 <- "INT =~ 1*M0 + 1*M1 + 1*M2 + 1*M3 + 1*M4 + 1*M5

SLP =~ 0*M0 + 1*M1 + 2*M2 + 3*M3 + 4*M4 + 5*M5

INT~~SLP

INT ~ IV + cov1

SLP ~ IV

DV ~ INT + SLP + IV + cov1 + cov2 + cov3"

growthmodel1 <- growth(model1, data=dat, estimator="MLM")

summary(growthmodel1, standardized=T, rsquare=T, fit.measures=T)

This model has good fit, as shown in the output below, χ2(80) = 118.35, robust CFI = .987, robust RMSEA = .053, SRMR = .041

It was recently suggested to me that I estimate the covariances between all exogenous predictors (beyond those that already have specified regression relationships). However, when I include them in the model, fit substantially worsens and df decrease by only one, as shown below:

model2 <- "INT =~ 1*M0 + 1*M1 + 1*M2 + 1*M3 + 1*M4 + 1*M5

SLP =~ 0*M0 + 1*M1 + 2*M2 + 3*M3 + 4*M4 + 5*M5

INT~~SLP

INT ~ IV + cov1

SLP ~ IV

DV ~ INT + SLP + IV + cov1 + cov2 + cov3

INT~~cov2

INT~~cov3

SLP~~cov1

SLP~~cov2

SLP~~cov3

IV~~cov1

IV~~cov2

IV~~cov3

cov1~~cov2

cov1~~cov3

cov2~~cov3"

growthmodel2 <- growth(model2, data=dat, estimator="MLM")

summary(growthmodel2, standardized=T, rsquare=T, fit.measures=T) #NOTE default was automatically changed to fixed.x=FALSE

χ2(79) = 1090.31, robust CFI = .672, robust RMSEA = .270, SRMR = 18.47

In fact, it seems that including any exogenous covariances has a strange effect, as model fit worsened and df increased when I replaced one regression (INT ~ IV + cov1) with the relevant covariances:

model3 <- "INT =~ 1*M0 + 1*M1 + 1*M2 + 1*M3 + 1*M4 + 1*M5

SLP =~ 0*M0 + 1*M1 + 2*M2 + 3*M3 + 4*M4 + 5*M5

INT~~SLP

SLP ~ IV

DV ~ INT + SLP + IV + cov1 + cov2 + cov3

INT~~IV

INT~~cov1”

growthmodel3 <- growth(model3, data=dat, estimator="MLM")

summary(growthmodel3, standardized=T, rsquare=T, fit.measures=T) #NOTE default was automatically changed to fixed.x=FALSE

χ2(89) = 2273.19, robust CFI = .434, robust RMSEA = .334, SRMR = 17.38

Can anyone help me identify why this might be happening, and how I might fix it? Thanks in advance!