2-1-1 mediation model with 2 outcomes
Message/Author
 A. Molina posted on Sunday, October 04, 2015 - 9:39 am
Hi,

I'm trying to test a 2-1-1 model that has 2 outcomes.

USEVARIABLES ARE
group x m y1 y2;
BETWEEN IS x;
CLUSTER IS group;
ANALYSIS: TYPE IS TWOLEVEL RANDOM;
MODEL:
%WITHIN%
m y1 y2;
y1 ON m(b); ! regress y1 on m, call the slope "b"
y2 ON m(c); ! regress y2 on m, call the slope "c"
%BETWEEN%
x m y1 y2;
m ON x(a); ! regress m on x, call the slope "a"
y1 ON m(b); ! regress y1 on m, constrain the slope equal to "b"
y2 ON m(c); ! regress y2 on m, constrain the slope equal to "c"
y1 ON x; ! regress y1 on x
y2 ON x; ! regress y2 on x
MODEL CONSTRAINT:
NEW(indb);
indb=a*b; ! compute the Between indirect effect from x to y1
NEW(indc);
indc=a*c; ! compute the Between indirect effect from x to y2
OUTPUT: TECH1 TECH8 CINTERVAL;

I have a few questions I'd like to ask you:

a)Is the syntax correct for such a model?

*** WARNING in MODEL command
In the MODEL command, the following variable is a y-variable on the BETWEEN
level and an x-variable on the WITHIN level. This variable will be treated
as a y-variable on both levels: M

c)What type of centering is this syntax implementing?

THANKS!
 Bengt O. Muthen posted on Sunday, October 04, 2015 - 5:52 pm
a) Yes, but why do you want equality across levels for a and b?

b) No.

C) None.
 A. Molina posted on Sunday, October 04, 2015 - 6:03 pm
Thanks!

I'm not sure what do you mean by "equality across levels for a and b". Could you elaborate please?
 Bengt O. Muthen posted on Sunday, October 04, 2015 - 8:05 pm
You have the labels (b) and (c) on both within and between, so that holds those parameters equal.
 Jo Oh posted on Friday, June 10, 2016 - 10:35 am
hi, I am also trying to do a 2-1-1 model with moderators on each side. My syntax is below. Is this correct?

VARIABLE: NAMES ARE teamid x m y w z con1_L2 con2_L1 con3_L1 con4_L1;
USEVARIABLES = x m y w z con1_L2 con2_L1 con3_L1 con4_L1;
categorical = x w;
MISSING = ALL (-999);
cluster = teamid;
BETWEEN IS x con1_L2;
define: center w z(grandmean);
DEFINE:
xw = x*w;
mz = m*z;
ANALYSIS: TYPE IS TWOLEVEL suffices;
MODEL:
%WITHIN%
w m z y con2_L1 con3_L1 con4_L1;
y on m (b1) mz(b2) z con2_L1 con3_L1 con4_L1;
m with z mz con2_L1 con3_L1 con4_L1;
z with mz con2_L1 con3_L1 con4_L1;
%BETWEEN%
x w m z y con1_L2 con2_L1 con3_L1 con4_L1;
m on x(a1) xz(a2) w con1_L2 con2_L1 con3_L1 con4_L1;
y on m mz z x xw w con1_L2 con2_L1 con3_L1 con4_L1;
x WITH w xw z mz con1_L2 con2_L1 con3_L1 con4_L1;
w WITH xw z mz con1_L2 con2_L1 con3_L1 con4_L1;
xw WITH z mz con1_L2 con2_L1 con3_L1 con4_L1;
z WITH mz con1_L2 con2_L1 con3_L1 con4_L1;
m WITH z mz con1_L2 con2_L1 con3_L1 con4_L1;
MODEL CONSTRAINT:
NEW(ind1 ind2 ind3 wmodval zmodval);
wmodval=3.89; !+1SD
zmodval=2.83; !+1SD
ind1=(a1+a2*wmodval)*(b1+b2*zmodval);
ind2=(a1+a2*wmodval)*b1;
ind3=a1*(b1+b2*zmodval);
OUTPUT: TECH1 TECH8 CINTERVAL;
 Jo Oh posted on Friday, June 10, 2016 - 10:39 am
continued...

Dear Dr. Muthen,
Reviewing some of the previous threads, I have written up a sketchy syntax that I think is in the right direction but wanted to run it by you for some feedback.
Above is my syntax for Mplus.
Thank you so much in advance!!!!
Best,
jo

wmodval=3.89; !+1SD
zmodval=2.83; !+1SD
!not sure what wmodval refers to. How would you get this value?
 Bengt O. Muthen posted on Friday, June 10, 2016 - 11:22 am
Before you embark on this kind of complex analysis, I think you should study the literature on this, for instance articles by Preacher and Zyphur, including one first-authored by Preacher that just got published. You need to understand how these indirect effect formulas get formed and what they mean.

You have several syntactic errors in your input such as more than one label on a row without semi-colon separation. These kinds of syntax questions should be sent to Support along with your license number.