# interactions between intercepts and slopes = growth curve modeling

61 views

### Diana Meter

Jun 5, 2018, 1:10:43 PM6/5/18
to lavaan
Hello,
I am working on a model that includes multiple growth curves. I would like to know how the interaction between two of the intercepts and two of the slopes affects two outcomes. I assume I cannot treat the intercepts and slopes as observed as I have it set up now because they are latent, and that my code below is incorrect. I bolded the line that I believe is incorrect. Is the best way forward to treat the indicators of the intercepts and slopes the way I would in a regular latent interaction (double mean-centering or orthogonalizing)? Is this model even something I can run in lavaan?
Best,
Diana

m1 <- '
# intercepts and slopes

hostInt =~ 1*sibhost3 + 1*sibhost4 + 1*sibhost5 + 1*sibhost6 + 1*sibhost7 + 1*sibhost8 + 1*sibhost9
hostSlop =~ 0*sibhost3 + 1*sibhost4 + 2*sibhost5 + 3*sibhost6 + 4*sibhost7 + 5*sibhost8 + 6*sibhost9

aggInt =~ 1*agg3 + 1*agg4 + 1*agg5 + 1*agg6 + 1*agg7 + 1*agg8 + 1*agg9
aggSlop=~ 0*agg3 + 1*agg4 + 2*agg5 + 3*agg6 + 4*agg7 + 5*agg8 + 6*agg9

affInt=~ 1*sibaffect3 + 1*sibaffect4 + 1*sibaffect5 + 1*sibaffect6 + 1*sibaffect7 + 1*sibaffect8 + 1*sibaffect9
affSlop=~0*sibaffect3 + 1*sibaffect4 + 2*sibaffect5 + 3*sibaffect6 + 4*sibaffect7 + 5*sibaffect8 + 6*sibaffect9

# regressions

hostInt ~ ov3 + rv3 + gender_coded
hostSlop ~ ov3 + rv3 + gender_coded
aggInt ~ ov3 + rv3 + gender_coded
aggSlop ~ ov3 + rv3 + gender_coded
affInt ~ ov3 + rv3 + gender_coded
affSlop ~ ov3 + rv3 + gender_coded

delinq9 ~ hostInt + hostSlop + aggInt + aggSlop + affInt + affSlop
dep9 ~ hostInt + hostSlop + aggInt + aggSlop + affInt + affSlop

delinq9 + dep9 ~ hostInt:aggInt + hostSlop:aggSlop
'

fit1 <- growth(m1, data=data, missing = "FIML", estimator="MLR")
summary(fit1, fit.measures=TRUE)

### Terrence Jorgensen

Jun 6, 2018, 3:28:47 AM6/6/18
to lavaan
I assume I cannot treat the intercepts and slopes as observed as I have it set up now because they are latent, and that my code below is incorrect.

Correct.  The colon operator will only add an interaction between observed variables in your data set.

Is the best way forward to treat the indicators of the intercepts and slopes the way I would in a regular latent interaction (double mean-centering or orthogonalizing)?

Doing so would set all your means to zero, so there could be no growth to model.

Is this model even something I can run in lavaan?

No, but I think you could use the XWITH feature in Mplus to invoke LMS.  LMS is also available in the R package nlsem, if you can manage to specify and estimate your model (they have a lavaan-syntax translator to help with that).

Terrence D. Jorgensen
Postdoctoral Researcher, Methods and Statistics
Research Institute for Child Development and Education, the University of Amsterdam