I'm conducting a meta-analytic structural equation model (MASEM) using the two-stage approach in metaSEM in R. I have fit a model with two indirect effects, and would like to compare them to see if they differ in magnitude. Is it possible to constrain the indirect effects to equality so I can compare this model fit to the full model? Or is there some other way of testing differences between indirect effects?

Stage 2 R code here:

stage2total <- wls(Cov = cordat, aCov = Acov,
              n = sum(unique(SGMAdata.db$N)), Amatrix = A, Smatrix = S,
              diag.constraints = TRUE,
              intervals.type = "LB", 
              mx.algebras = list(
              depindirectEffect = mxAlgebra(b21*b42, 
              name="depindirectEffect"), indepindirectEffect = 
              mxAlgebra(b31*b43, name="indepindirectEffect"))

1 Answer 1


Adding such a constraint is a bit tricky, but you should get an LBCI for the difference between the two indirect effects by adding this in the mx.algebra list:

difference = mxAlgebra(depindirectEffect-indepindirectEffect,name="difference")

  • $\begingroup$ That worked! Thank you so much for your help. $\endgroup$
    – Katerina
    Apr 6 at 17:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.