Model constraint - new variable
Message/Author
 Mplus User posted on Wednesday, May 31, 2017 - 10:47 am
I have a mediation model, and I'm interested in testing whether two mediation effects are significantly different from each other in magnitude. I use the Model Constraint method to create a new variable "diff" (see below). I also requested for standardized effects (stdyx). The Mplus output provides standardized and unstandardized coefficients for all my variables except diff, in which only an unstandardized coefficient was provided. I also tried using bias-corrected bootstrapping, but again, only an unstandardized coefficient was provided. Is there a way to obtain the standardized coefficient for the new variable, diff?

MODEL CONSTRAINT:
NEW (ind_1 ind_2 );
ind_1 = a1*b1;
ind_2 = a2*b2;

NEW (diff);
diff = ind_1 - ind_2;
 Bengt O. Muthen posted on Wednesday, May 31, 2017 - 5:46 pm
You have to express the standardization yourself in Model Constraint. That is, express the standardized version of ind_1 and ind_2 and then express the difference.
 Mplus User posted on Thursday, June 01, 2017 - 10:01 am
Thank you so much, Bengt. This is probably a dumb question -- how do I create a standardized version of ind_1 and ind_2?

MODEL CONSTRAINT:
NEW (ind_1 ind_2 );
ind_1 = a1*b1;
ind_2 = a2*b2;

NEW (diff);
diff = ind_1 - ind_2;
 Mplus User posted on Thursday, June 01, 2017 - 10:42 am
I tried to answer my own question. Does this syntax create a standardized version of the two indirect effects? This is based on equation 9 in Preacher and Kelly (2011). I multiplied path a and path b by the standard deviation of X (.744) divided by the standard deviation of y (2.911). Is the syntax below correct?

MODEL CONSTRAINT:
NEW (ind_1 ind_2);
ind_1 = a1*b1*.744/2.911;
ind_2 = a2*b2*.744/2.911;

NEW (diff);
diff = ind_1 - ind_2;
 Bengt O. Muthen posted on Thursday, June 01, 2017 - 6:56 pm
The formula is right but when you insert numbers like this (e.g..744) you are not taking into account sampling error. You need to express the SDs in model parameter terms.
 Mplus User posted on Thursday, June 01, 2017 - 9:17 pm
How do I express the SD in model parameter terms?
 Bengt O. Muthen posted on Friday, June 02, 2017 - 1:42 pm
For instance,

Model:

....
x (varx);
y on x (b);
y (resvary);

Model Constraint:

New(sd);

sd = sqrt(b*b*varx+resvary);
 Irina Patwardhan posted on Tuesday, December 26, 2017 - 8:05 am
Hi everyone,

I am using a MODEL CONSTRAINT statement to estimate group differences in all paths in the multiple group model. The model works fine, but I don't understand how to interpret the output, what kind of statistics is calculated with the model constraint?

model:
DIFtas on Risk8;

MODEL MALE:

DIFtas on Risk8(p1) ;

MODEL FEMALE:

DIFtas on Risk8(p1f) ;

model constraint:
new diff1 (and so on for each of the 27 paths);

diff1=p1-p1f;

and I then get the estimates, SE, and p-values for the new/additional parameters in the bottom of my ouptput.

DIFF1 (Estimate= -0.142) (SE=0.129)(ESt/SE=-1.105)(p-value=0.269)

What kind of statistics is reported with the estimate? Looks like a Beta to me, is it correct?
 Bengt O. Muthen posted on Tuesday, December 26, 2017 - 4:08 pm
Like all parameters in the Model command, your p1 and p1f parameters are unstandardized regression coefficients. Diff1 is their difference.
 Rosa Mindeguia Petrirena posted on Monday, May 07, 2018 - 2:59 am
Dear Munthen,

I have a moderated mediation model, I use a the Model Constraint method to create new variables of indirect effects "IND_HI; IND_LO" (see below). I also requested for standardized effects (stdyx). The Mplus output provides standardized and unstandardized coefficients for all my variables except the new variables. Is there a way to obtain the standardized coefficient for the indirect effects?

MODEL CONSTRAINT:

NEW(LOW_TC HIGH_TC IND_LOWTC IND_HITC TOT_LOWTC TOT_HITC);
LOW_TC = 2;
HIGH_TC = 5;
IND_LOWTC = a1*b1 + a1*b3*LOW_TC;

IND_HITC = a1*b1 + a1*b3*HIGH_TC;

TOT_LOWTC = IND_LOWTC + cdash;

TOT_HITC = IND_HITC + cdash;

PLOT(LOMOD HIMOD);
LOOP(XVAL,1,6,.01);
LOMOD = IND_LOWTC*XVAL;

HIMOD = IND_HITC*XVAL;

PLOT: TYPE = plot2;

OUTPUT: STANDARDIZED CINTERVAL (BOOTSTRAP) TECH8;
 Bengt O. Muthen posted on Monday, May 07, 2018 - 5:37 pm
There is no way for Mplus to know what quantities you have in Model Constraint, so no way to standardize. You have to do it yourself in Model Constraint by using variances based on parameter labels in the Model command.
 Dayuma Vargas posted on Tuesday, August 21, 2018 - 12:26 pm
Hello everyone,

I am trying to use MODEL CONSTRAINT to assess differences in distal outcomes across profiles in a LTA. I am using the manual 3-step approach. However, I am getting an error message (Unknown parameter label in MODEL CONSTRAINT) and I cannot see where the problem in my syntax is. I wonder if a different pair of eyes may find it. Thank you in advance to all!

Here is the relevant syntax:

CLASSES ARE T1(4) T2(4);
NOMINAL ARE T1_N_LTA T2_N_LTA;

ANALYSIS:
TYPE IS mixture;
ESTIMATOR IS MLR;

MODEL:
%Overall%
T2 ON T1;
T1 ON esexe (r1-r3);
T2 ON esexe (r1-r3);

Model T1:
%T1#1%
[T1_N_LTA#1@4.299];
[T1_N_LTA#2@6.586];
[T1_N_LTA#3@3.982];

[e5ext] (aa1);
[e5iden] (aa2);
[e5inti] (aa3);

%T1#2%
[T1_N_LTA#1@1.542];
[T1_N_LTA#2@-1.578];
[T1_N_LTA#3@-0.808];

[e5ext] (ab1);
[e5iden] (ab2);
[e5inti] (ab3);

...

MODEL CONSTRAINT:

New(ext_12);
ext_12=aa1-ab1;

...

*** ERROR Unknown parameter label in MODEL CONSTRAINT: AA1
 Bengt O. Muthen posted on Tuesday, August 21, 2018 - 6:11 pm
 Jordan posted on Tuesday, September 11, 2018 - 12:23 pm
Hello,

I've noticed that when I use a Model Constraint command (in this case, to estimate conditional indirect effects), the beta parameters of the model change drastically. Are these valid, or should I only pay attention to the beta parameters when running the model without the model constraint command? (Relatedly, I've noticed that the fit indices are markedly different as well;i.e., poorer fitting).

Thanks
 Bengt O. Muthen posted on Tuesday, September 11, 2018 - 2:30 pm