Residual covariances in moderated mediation with latent variables (indProd)

152 views
Skip to first unread message

HG Wells

unread,
Feb 3, 2022, 10:49:43 AM2/3/22
to lavaan
Hi everyone,

I am trying to run a moderated mediation with a latent interaction defined by (A) a five-item scale and (B) a 3-item scale. I have used indProd with match = FALSE and double-mean centering.
I am struggling understanding how residual covariances should be specified in the model, I would appreciate much anyone's help.

In particular, I have found other posts indicating that the latent interaction should covary with all the possible products created by indProd, is that correct?

latent_interaction ~~ item_A1.itemB1 + item_A1.itemB2 + item_A1.itemB3 + item_A1.itemB4 + item_A1.itemB5 + item_A2.itemB1 ... etc

Or, do the products need to covary among them all, for the same item, for example:

item_A1.itemB1 ~~ item_A1.itemB2 + item_A1.itemB3 + item_A1.itemB4 + item_A1.itemB5
item_A1.itemB2 ~~ item_A1.itemB3 + item_A1.itemB4 + item_A1.itemB5
item_A1.itemB3 ~~ item_A1.itemB4 + item_A1.itemB5
item_A1.itemB4 ~~ item_A1.itemB5
item_A2.itemB1 ~~ item_A2.itemB2 ... etc ?

Thank you in advance for anyone's attention and help.
Emanuele

Edward Rigdon

unread,
Feb 3, 2022, 4:24:17 PM2/3/22
to lav...@googlegroups.com
The product terms become the indicators of the interaction factor, so change the ~~ to =~ in your first line:

latent_interaction =~ item_A1.itemB1 + item_A1.itemB2 + item_A1.itemB3 + item_A1.itemB4 + item_A1.itemB5 + item_A2.itemB1 ... etc

(You said that A had 5 items and B had 3 items, but this line of syntax suggests the other way around.)
Then the rule for residual covariances, in the absence of matching, is to allow a residual covariance for every pair of product indicators that share a term. So, for example, your next line of code:

item_A1.itemB1 ~~ item_A1.itemB2 + item_A1.itemB3 + item_A1.itemB4 + item_A1.itemB5

does the job for product terms containing item_A1.
If A has 3 items, then you will need 2 more lines like this, one for A2 and one for A3.

That should specify the 15 residual covariances (3 x 5) that the no-matching strategy entails.

--Ed Rigdon


--
You received this message because you are subscribed to the Google Groups "lavaan" group.
To unsubscribe from this group and stop receiving emails from it, send an email to lavaan+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/lavaan/87d72bde-da9d-49c5-9f03-fc0e1b032acfn%40googlegroups.com.

Emanuele Fino

unread,
Feb 3, 2022, 8:13:08 PM2/3/22
to lav...@googlegroups.com
Thank you very much for your reply, that is very helpful and much appreciated.

(You said that A had 5 items and B had 3 items, but this line of syntax suggests the other way around.)
Apologies, that's absolutely right.

latent_interaction =~ item_A1.itemB1 + item_A1.itemB2 + item_A1.itemB3 + item_A1.itemB4 + item_A1.itemB5 + item_A2.itemB1 ... etc
Got it.

item_A1.itemB1 ~~ item_A1.itemB2 + item_A1.itemB3 + item_A1.itemB4 + item_A1.itemB5
does the job for product terms containing item_A1.
If A has 3 items, then you will need 2 more lines like this, one for A2 and one for A3.
This is what I struggle with. I may well be wrong, but I was wondering, by doing so, wouldn't we only set all possible  covariances for item_A1.itemB1, item_A2.itemB1, and item_A3.itemB1 only? I thought that in order to allow all possible covariances, the syntax should be like the following?

item_A1.itemB1 ~~ item_A1.itemB2 + item_A1.itemB3 + item_A1.itemB4 + item_A1.itemB5
item_A1.itemB2 ~~ item_A1.itemB3 + item_A1.itemB4 + item_A1.itemB5
item_A1.itemB3 ~~ item_A1.itemB4 + item_A1.itemB5
item_A1.itemB4 ~~ item_A1.itemB5

item_A2.itemB1 ~~ item_A2.itemB2 + item_A2.itemB3 + item_A2.itemB4 + item_A2.itemB5
item_A2.itemB2 ~~ item_A2.itemB3 + item_A2.itemB4 + item_A2.itemB5
item_A2.itemB3 ~~ item_A2.itemB4 + item_A2.itemB5
item_A2.itemB4 ~~ item_A2.itemB5

item_A3.itemB1 ~~ item_A3.itemB2 + item_A3.itemB3 + item_A3.itemB4 + item_A3.itemB5
item_A3.itemB2 ~~ item_A3.itemB3 + item_A3.itemB4 + item_A3.itemB5
item_A3.itemB3 ~~ item_A3.itemB4 + item_A3.itemB5
item_A3.itemB4 ~~ item_A3.itemB5

Thank you very much for your patience and help.
Emanuele


You received this message because you are subscribed to a topic in the Google Groups "lavaan" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/lavaan/IAY6yvuKGz0/unsubscribe.
To unsubscribe from this group and all its topics, send an email to lavaan+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/lavaan/CAHxMgefbADe03QwA34Fs0ETZZeG3NV%2BiFYd84pVgKA53N4M5Ew%40mail.gmail.com.

Alex Schoemann

unread,
Feb 4, 2022, 9:52:03 AM2/4/22
to lavaan
Yes, that's the correct set of covariances for the A items, you also need to include residual covariances for the B items (e.g. all items with B1 covary). This can result in a LOT of parameters in the model, for this reason I'd recommend constraining covariances related to the same item to equality (e.g. all the covariances for the A1 items are constrained to equality). There's a discussion of that in this paper: https://doi.org/10.3390/
psych3030024 

Alex

Emanuele Fino

unread,
Feb 4, 2022, 4:04:51 PM2/4/22
to lav...@googlegroups.com
Perfect, that makes sense, and the paper is really helpful. Thank you both very much for your time and kind help, I really appreciate it.

Emanuele

Reply all
Reply to author
Forward
0 new messages