Message/Author 

Anonymous posted on Tuesday, May 04, 2004  9:03 am



Do you have a downloadable example with output of SEM with an interaction between latent variables, like example 5.13 in the Mplus version 3 User's Guide? Thank you. 


The examples are not available on the website. They do come on the program CD. If you email me at support@statmodel.com, I can send you this output. 

Anonymous posted on Tuesday, May 04, 2004  11:35 am



I've found the examples on the program CD  did not realized they were there. I ran the example and have the output to review. Thanks again. 

Anonymous posted on Monday, October 11, 2004  4:42 pm



I am interested in running the following model: y1 on x1... y2 on y1 x2... z2 If, in the define section, if I make z2 = y1*x2, is the result in the model going to be based on y1 or y1* where y1* is the "predicted value" from the "first stage" model? What I am trying to do is create an interaction term where one of the terms is not an observed value but a predicted term that has been instrumented. Thank you. 


It will be based on y1. 

Anonymous posted on Tuesday, October 12, 2004  5:34 pm



Is there anyway to base it on y1*? 

bmuthen posted on Thursday, October 14, 2004  11:35 am



You can do that by defining a factor that is perfectly measured by y1* and then do XWITH with that factor. 

Anonymous posted on Tuesday, March 22, 2005  6:49 pm



Hi  I just ran a regression with a continous dependent variable predicted by a series of continous variables and continous*ordinal variable interactions. I have tried to calculate predicted values: Drinkday Days = B0 + B1(delinquency) + B2(sex) + B3(grade) + B4(race) + B5(del*sex) + B6(del*grade) + B7(del*race) + B8(del*sex*grade) + B9(del*sex*race) + B10(del*age*race) The issue is that I entered sex scored as 1 for males and 2 for females, grade scored 6 for 6th graders, 8 for 8th graders, and 11 for eleventh graders. I see in the Mplus manual that these values may have been recoded such that: sex = 0/1 age = 0/2/5 race = 0/1/2/3/4 My question is: Did Mplus recode in this manner, and if so, when calculating the predicted values, do I enter the recoded values? I ask because I am obtaining negative predicted values, when the values should range from 0positive numbers. Why would I get negative predicted values 


The only variables that would be recoded are ones that are on the CATEGORICAL or NOMINAL lists. Independent variables should not be placed on these lists. If you put them on one of these lists, you should remove them and rerun the analysis. 

Anonymous posted on Tuesday, April 12, 2005  8:25 pm



I am running a model in which I am investigating the interaction of a continuous latent variable with a continuous observed variable in predicting a latent contuous variable. The model runs, and the interaction is statistically reliable. Is there a preferred way to approach understanding and describing the interaction? I was thinking that I would output the latent variable factor scores and the observed variable, and then implement Cohen, Cohen, Aiken and West's approach to investigating the interaction of two continuous variables (i.e. an approach regularly used in regression). Am I missing anything here? I am assuming that because I am producing the factor scores from the model, that this approach will parse the interaction. Thanks. 

BMuthen posted on Wednesday, April 13, 2005  11:20 pm



You can do what you suggest. You can also interpret the interaction in terms of a moderating effect which is described in the Day 5 short course handout. 

Jinseok Kim posted on Tuesday, January 03, 2006  10:31 pm



I apologize that I posted the same message under CFA/factor score. You can response to either of them. I am thinking of using mplus to estimate a latern interaction modeling. Schumacker introduced some approach by Joreskog that used "latent variable score" to estimate a sem with latent interaction modeling (http://www.ssicentral.com/lisrel/techdocs/lvscores.pdf). It seems to me attractive but his explanation is all in LISREL language. So, I was wondering if I can do the same modeling using mplus. Any of your thoughts and suggestions will be greatly appreciated. Thanks. 


hi. I am new to mplus so I am trying to run a simple moderating model with observed factors [i created a sumscore] where x1 and x2 would predict y1 but I want to create a x1*x2 interaction term. I read in the manual that to do this I need to use the DEFINE command, but I am not sure how. It is not clear from the manual how to write that and where it goes? does it go in the model section just like it would if I had XWITH? or does it go somewhere else? Thanks for your guidance. 


You create the interaction in DEFINE, for example, DEFINE: x1x2 = x1*x2; You use x1x2 as a covariate in the MODEL command. 


Dr. Muthen. Thank you for your response. I created the interaction in DEFINE as you suggested, but when I put the interaction variable in the model, I get "ERROR in Model command Unknown variable(s) in an ON statement: F1XF2" This is the syntax I wrote: Analysis: Type = RANDOM; DEFINE: x1x2 = discrmmn*eisaffmn; Model: esteemmn ON discrmmn eisaffmn eisexpmn eisresmn; esteemmn ON x1x2; output: residual mod(5); I know you mentioned that I needed to include the x1x2 as a covariate in the model, but I am not sure how. I did not write the x1x2 on usevariable, do I have to? I think I read somewhere on the discussion board that it should not be included in the usevariables. Is this wrong? Thanks for your help. 


All variables used in the analysis need to be on the USEVARIABLES list. New ones created in DEFINE should come after the original variables. This is described in the user's guide. 


Thanks! it worked. I have a followup question. If I request centering the covariates first, and then create the interaction term, would the interaction be calculated on the centered variables? this is the syntax I have: usevariables are esteemmn discrmmn eisaffmn eisexpmn eisresmn x1x2; CENTERING = GRANDMEAN (discrmmn eisaffmn eisexpmn eisresmn); Analysis: Type = RANDOM; DEFINE: x1x2 = discrmmn*eisexpmn; Model: esteemmn ON discrmmn eisaffmn eisexpmn eisresmn; esteemmn ON x1x2; output: TECH1 TECH8; Thanks for your help! 


The operations in DEFINE are done before the centering. 


I'm sorry to keep bothering you, but how could I create an interaction term on the centered variables if the operations in DEFINE are done before? Is there any way to do that on mplus or do I have to center all variables outside mplus (i.e., spss) and just create the interaction term on the previously centered variables? thanks for your help. Mayra 


You would have to do it in two steps. First do the centering and save the data. Then use the saved centered data for the next step. 


hello again. I tried centering and saving the data using mplus and it is able to actually save a newdata.dat file, but it has 0 observations. The ascii file is 507KB, but when it saves is as 'newdata.dat is has 0KB. What am I doing wrong? I tried writing format is free and format is f8.2 but it still gives me a new file with 0KB. here's my syntax: Data: File is E:\Conferences\SRA08\7thgradecen.dat; Variable: missing are all (500); names are ARCODE SCODE langspk spanhome...[list of all variable in file] usevariables are esteemmn discrmmn eisaffmn eisexpmn eisresmn; CENTERING = GRANDMEAN (discrmmn eisaffmn eisexpmn eisresmn); SAVEDATA: FILE IS E:\Conferences\SRA08\newdata.dat; FORMAT IS F8.2; thanks for your help. 


This is a support question. Please send your input, data, output, and license number to support@statmodel.com. 


I am going to run a LMS model. I want to know that should we use TuckerLevis, Normed Fit Index, ChiSquare, GFI, AGFI, and ChiSquare to degree of freedom ratio to check model fit in LMS, as we use them in ordinary SEM? If so can Mpluse calculate them? 


Chisquare and related fit statistics have not yet been developed for the LMS model. 

ehsan malek posted on Friday, April 18, 2008  10:44 am



Not yet developed in the literature or not implemented in Mplus you mean? And if there is noting in the literature, how can I check the adequacy of my model? 


In the literature. In cases where chisquare and related fit statistics are not available, nested models are often compared using 2 times the loglikelihood difference which is distributed as chisquare. 


Dear Linda (or Bengt), I have a simple question regarding latent factor interactions. I have two latent factors (based on continuous manifest variables) predicting an outcome (a total score of depression; manifest variable). To test interaction effects between the two latent factors in the model, do I need to do "centering" all the item scores (manifest variables) that consist of the two latent factors? Thanks much! Jungmeen 


It is not necessary to center the variables. 


Thank you Linda! Good to make sure. With my latent factor interaction testing using the Mplus, what would be the best reference to give in the paper  I have the copy of Muthen and Asparoughov (2003); Modeling interactions between latent and observed continuous variables... ; are there other reference you would recommend? The reviewers asked me to justify why I used this approach while there are many ways to test the interaction between latent variables. Jungmeen 


I would also refer to the KleinMoosbrugger Psychometrika paper we have in the UG ref list which was the first to describe ML estimation for latent interaction models. There is also an overview paper in Psych Methods a couple of years back by Marsh and others comparing methods for this. The ML approach gets a fairly good review. 


Thank you Bengt for your prompt and helpful reply as always. I will refer to KleinMoosbrugger paper in addition to yours, and I read the Marsh paper and agree with you that the ML approach received a good review. Jungmeen 


Dear Linda and Bengt, Since the latent interaction models do not yield chisquare statistics, I compared two nested models – with and without interactions. In the output WITHOUT interactions: Loglikelihood H0 Value 3248.317 H0 Scaling Correction Factor 1.034 for MLR Information Criteria Number of Free Parameters 37 Akaike (AIC) 6570.634 Bayesian (BIC) 6696.366 SampleSize Adjusted BIC 6579.112 Now, with interaction term: Loglikelihood H0 Value 3244.437 H0 Scaling Correction Factor 1.018 for MLR Information Criteria Number of Free Parameters 39 Akaike (AIC) 6566.874 Bayesian (BIC) 6699.402 SampleSize Adjusted BIC 6575.809 Can I say that the second model is preferred since the AIC and SSABIC decreased? The interaction term is significant (p =.05). However, the diff of df b.w. the two model = 3937 = 2, and diff b.w. loglikelihood estimates = (3248.317) – (3244.437) = 3.222, and not significant based on the table of chisquare statistics (p <.05). Thank you! 


The value that is distributed as chisquare is 2 times the loglikelihood difference, not the loglikelihood difference. The value is 7.76 which is signficant at the 5 percent level for two degrees of freedom. 


Dear Drs. Muthen, I am testing a model including two continuous latent variables and their interaction term on a single latent outcome. Factors indicators for the latent variables are categorical and continuous. My sample size is around 7000 subjects and I'm using survey commands for analysis. I'd like to know: 1) is Mplus using LMS or QML method for interaction estimation? 2) Do you have a complete example to follow? The only example in the manual is exercise 5.13. However, this example is for continuous variables. Is the procedure exactly the same when one deals with categorical variables? For example, can the ML estimator (default) be used in my case? 3) Should I center variables as recommended by Klein and Moosbrugger (2000) or should I work with the actual variable scales? 4) Do you know any paper reporting test of models with interaction terms using Mplus that i can use as a guide? Thanks in advance for your help, E 


1. Fullinformation maximum likelihood so LMS 2. Factors are continuous irrespective of the scale of the factor indicators. See the course handout on the website for Topic 3, slides 125131. This is in a growth modeling context. 3. Not necessary 4. See the following paper: Marsh, H.W., Wen, X, & Hau, K.T. (2004). Structural equation models of latent interactions: Evaluation of alternative estimation strategies and indicator construction. Psychological Methods, 9, 275300. 


Linda, thanks for the quick response. However, I have another question: I'm inclined to use the unconstrained approach by Marsh et al. but when I run the analysis I got the path for each of my two exogenous lv on the single endogenous lv, the path for their latent interaction on the endogenous lv (using product indicators) and the correlation between the two exogenous lv. The model fit is good and the interaction term is significant but I also got the values for the correlations between the latent interaction and each endogenous lv. I'd like to know what i should do with the two latter paths. As far as I know, if I use LMS method, I won't get them. On the other hand, if I constrained them to be zero the model fit is not good. Any advice would be helpful. E 


Please send the two outputs and your license number to support@statmodel.com. 


Dear Drs. Muthen, I am conducting interaction with Mplus (the LMS approach).I’m stuck with the following issue: To test the significance of the interaction term I would like to apply the procedure proposed by Preacher, K. J., Curran, P. J., & Bauer, D. J. (2006).Computational tools for probing interaction effects in multiple linear regression, multilevel modeling, and latent curve analysis. Journal of Educational and Behavioral Statistics, 31, 437448. Preacher and collegues have developed an approach to test this within an OLS regression. They also have an approach to test it within an longitudinal sem framework, but not with an interaction between latent variables. But in the sem I have latent variables. What I want to do is I’d like to illustrate the region of significance; i.e. I’d like to show (1) at which level of the moderator the interaction term has a significant influence and (2) which influence (beta coefficient) the interaction term has on the dependent variable depending on the level of the moderator. Could you recommend me any example/paper where a similar approach is applied? Maybe also especially with the LMS procedure with the objective of justification via any probing procedure after calculation of the coefficent. I would greatly appreciate if you could give me some advice. Yours sincerely Alexander 


I don't know of any such paper. You might want to contact Andreas Klein. 


Here is Andreas Klein's answer. if I understand the user's email correctly, he is asking for when, given a certain level of the moderator ksi1, the effect of the other exogeneous variable on the criterion is significant. What he says is a little bit confusing because there is no "effect of the interaction term", once one has conditioned on one of the variables that are involved in the interaction term. So, I assume what he is asking about is an evaluation of the term (beta2+gamma*ksi1), which is the moderator function in the model eta= alpha+beta1*ksi1+ (beta2+gamma*ksi1) ksi2 + error. After an LMS analysis in Mplus, and for a fixed value of ksi1, one could use the entries in the covariance matrix of the estimates to calculate an adhoc confidence interval for the term z = (beta2+gamma*ksi1). The variance of this term would simply be Var(z) = Var(beta2) + ksi1^2 *Var(gamma) + 2*ksi1* Cov(beta2,gamma). From this, he could calculate a confidence interval in the usual way. The way shown may not be the ultimately optimal way to calculate a confidence interval for the term, but it should fare well when sample size is not too small. Hope this helps! 


I would like to investigate typical questions one can investigate with multiple group analysis with different age groups (ex. young vs. old subjects), whether factor loadings, intercepts and factor means are changing or invariant in those age groups. But I have a continuous age variable 1888 years and it would make sense for me not to dichotomise or trichotomise the age variable and I wonder whether I can investigate those questions with interaction models between latent variables and a continuous observed (age) variable. Do you have any suggestions of applications like that in mplus? Could I specify an interaction between the age variable and a secondorder factor and test whether this interaction significantly influences the loadings of three firstorder factors on that secondorder factor? Do you have an mplus code example for such an analysis? Thanks a lot for your help! 


If you do not want to categorize your age variable, you can use a MIMIC model to test for intercept invariance using direct effects. You can use the XWITH option to define an interaction between age and a factor to test for factor loading invariance and use this interaction as a covariate in a direct effect, for example, int  age XWITH f; y ON int; 


Dear Linda, I have a question to your reply from October 28. could y in the specification int  age XWITH f; y ON int; be an estimated parameter, for instance factor loading. I would like to investigate whether the factor lodings are changing as a function of age. f by x1 x2 x3; int  age XWITH f; Lamdax1 ON int; Lamdax2 ON int; Lamdax3 ON int; Could I adress those Lamdas with Mplus? Or should I adress the indicators x1 x2 and x3? A significant effect for "x1 ON int;" means that the the loadings are changing as a function of age? Thank you very much! 


I think the following does what you want: int  age XWITH f; x1x3 ON int; 


Hello, I have a similar question to the one above from 7/1/08, which read: "I'm inclined to use the unconstrained approach by Marsh et al. but when I run the analysis I got the path for each of my two exogenous lv on the single endogenous lv, the path for their latent interaction on the endogenous lv (using product indicators) and the correlation between the two exogenous lv. The model fit is good and the interaction term is significant but I also got the values for the correlations between the latent interaction and each endogenous lv. I'd like to know what i should do with the two latter paths. As far as I know, if I use LMS method, I won't get them. On the other hand, if I constrained them to be zero the model fit is not good. Any advice would be helpful. " I am estimating a model with 2 latent factors plus their interaction, created using XWITH. I would like to model the correlation between the interaction and each latent factor. Right now, putting in these correlations with a WITH statement results in error messages saying that the latent variable covariance matrix is not positive definite. Is there another way to estimate these correlations? Thank you! 


The interaction created using XWITH should be used only on the righthand sign of an ON statement. It should not be used in a WITH statement. 


Thank you, Dr. Muthen. To follow up on your answer, I am wondering why it is not possible to use XWITH in a WITH statement? Specifically, we are interested in correlating all latent factors such that only their unique variance is predicting the outcome. We are thinking of the interaction term as another latent factor we would like to correlate with the others. If modelling this correlation is not possible, can we still claim that the path coefficients of the latent factors to the outcome represent only their unique relationships? Thank you again for your help. 


The interaction is not like the other latent variables in the model. It has no mean and variance parameter estimated for it. This is why it cannot be used in the way you want. 

Vlad posted on Tuesday, March 24, 2009  11:21 am



Hello, I am a new in using mplus and I have particular questions concerning the integrated choice and latent variable models(ICLV). I have read the paper by Dirk Temme, Marcel Paulssen and Till Dannewald (http://www.statmodel.com/download/Temme.pdf ). At Figure 1 (page 222), the authors have the ICLV graph which they would like to estimate. I have the same model except one thing: I would like to introduce in the model the interaction terms among latent variable(s) and some explanatory variables which may have an effect(s) on the observed choice. Moreover, I would like to test whether the observed choice has impact on latent variables or not. My questions are: 1) Does mplus allow the interaction terms among latent variable(s) and explanatory variables and at the same time the model is simultaneously and jointly estimated as it is illustrated in the paper above? 2) Does mplus allow taking into account the effect of observed choice on latent variable(s)? One possibility for Q1 is to define the interaction term(s) (latent*explanatory variables) outside the model. Then, introduce these terms in the model but in that case it will be estimated sequentially and not jointly. What kind of consequences I can face in that case? Regards, V 


1) Yes, such interactions are handled via the XWITH option and are available in general models like these. 2) I think you are asking if a nominal (unordered polytomous) observed variable can be a predictor of a latent continuous (factor) dependent variable. If so, the answer is yes. You can do this by defining a latent class variable with categories directly corresponding to those of the nominal observed variable. The latent class variable can then influence the latent DV by letting the latent DV means vary over the latent classes (this mean variation happens by default). I would not define the factor interaction outside the model because you would first have to estimate factor scores which are known to not behave quite like the actual latent variable scores. 

Vlad posted on Tuesday, March 31, 2009  2:47 pm



Hello, I have the following code: DATA: FILE IS C:\MPL\data2.prn; VARIABLE: MISSING ARE ALL (99); Variable: NAMES ARE id qdelta ans bid p13_5 p13_8 p13_10 p13_11; usevariables = ans p13_5 p13_8 p13_10 p13_11 qdelta bid; categorical = ans p13_5 p13_8 p13_10 p13_11; classes = c (2); missing = all (99); analysis: type = mixture; model: %overall% ans on qdelta bid; %c#2% ans on qdelta bid; But I am interested to have classes with respect to 13_5p13_11(ordered variables) but not with respect ans(binary variable) and at same time to be able run regression ans on covariates for different classes.How can I do that? Regards, V 


You hold the threshold parameter of ans equal across the 2 classes. Note that if you specify ans slopes on covariates to be different across classes, those slope differences will play a part in determining class membership. 

Vlad posted on Wednesday, April 01, 2009  4:05 pm



Thank you for help! 

Vlad posted on Monday, May 11, 2009  12:45 pm



Hello, I have problem in understanding what Mplus does. DATA: FILE IS C:\MPL\data.prn; Variable: NAMES ARE income qualev qdelta ans bid p13_1p13_15; usevariables = qdelta ans bid p13_5 p13_8 p13_10 p13_11 qualev ; categorical = ans p7 p13_5 p13_8 p13_10 p13_11; missing = all (99); MODEL: !Latent Variable f1 by p13_5 p13_8 p13_10 p13_11; !NEW LINK !p13_5 p13_8 p13_10 p13_11 on ans; analysis: type = rand; algorithm=integration; integration = montecarlo; model: ans on f1 qdelta qualev bid; plot: type is plot3; series are p13_5(1) p13_8(2) p13_10(3) p13_11(4); savedata: file is C:\MPL\classOUTPUT8.txt; save is fscores; format is free; output: tech1 tech2; ans and p7 are binary variables p13_5 p13_8 p13_10 p13_11 are variables with five categories. When I run the model the program reports that the dimension of integration is one. It is ok since this integration is over latent variable f1. However, when I introduce the “NEW LINK” (above in the code) there are two dimensions of integration. I can’t understand over which variable in the model the second integration takes place. Moreover, if I interchange ans on p7 which is also binary variable, the dimension of integration is again one. Can you help me understand what program does? Regards, V 


One dimension of integration is for f1. The other is for ans when it is a mediator because it has missing data and therefore is a latent variable. 

Vlad posted on Thursday, May 14, 2009  8:08 am



Hello, How to save the predicted values of the dependent variable so that I can see these values after estimating model in savedata information? regards, V 


You would have to use DEFINE to create a variable that is the predicted value. 

Vlad posted on Thursday, May 21, 2009  8:17 am



Hello, Thank you for your reply to my previuos questions. I have two more questions. Does Mplus allow to have an intercept in some classes of latent class model? I would like also to know how to restrict the parameters to be equal to zero in the specific class. Thank you in advance. Regards, V 


I am not sure what you mean by your first question. To set a parameter to zero, say @0 after the parameter. 

Vlad posted on Thursday, May 21, 2009  10:39 am



Saying an intercept I assume a constant term. For instance, in stata we have a constant term in the equation by default and the same time you are able to suppress this constant. 


You can suppress it by fixing it at zero. 

Vlad posted on Monday, May 25, 2009  7:41 am



EstimaHello, I posted the code for LCM in March 31, 2009  2:47 pm which you can see above. I followed your suggestion and fixed the threshold of ans, [ans$1] (1). In the output, does the threshold for ans represent the constant term? if yes, does it mean that the constant is equal in two classes? If no, where can we find the constant term? Below you can find part of the output: Latent Class 1 ANS ON BBID 2.008 0.000 999.000 999.000 Thresholds ANS$1 0.418 0.666 0.628 0.530 P13_4$1 5.236 1.093 4.790 0.000 P13_4$2 2.980 0.383 7.786 0.000 P13_4$3 2.139 0.275 7.770 0.000 P13_4$4 1.163 0.210 5.538 0.000 Latent Class 2 ANS ON BBID 0.087 0.052 1.665 0.096 Thresholds ANS$1 0.418 0.666 0.628 0.530 P13_4$1 4.867 0.503 9.672 0.000 P13_4$2 3.216 0.232 13.855 0.000 P13_4$3 2.131 0.146 14.597 0.000 P13_4$4 0.800 0.097 8.220 0.000 Categorical Latent Variables Means C#1 1.123 0.200 5.618 0.000 


Please send your full output and license number to support@statmodel.com. 

Vlad posted on Monday, June 01, 2009  8:19 am



Hello, I have a question concering LCA. In many works it is assumed that categorical variables are independent within classes.I have written an example in Mplus where this restriction can be relaxed. USEVARIABLES ARE q1 q2 q3 q4; CATEGORICAL = q1 q2 q3 q4; CLASSES C = c (2); ANALYSIS: ESTIMATOR = ML; TYPE = MIXTURE; ALGORITHM = INTEGRATION; MODEL: %OVERALL% q1q3 ON q4; %c#1% q1q3 ON q4; %c#2% q1q3 ON q4; Does this code really allow for the conditional dependence within classes? regards, V 


To some extent this allows for conditional dependence. A better way is to use a factor: f BY u1u4*; f@1; See the factor mixture papers on the website for further information. 

Vlad posted on Tuesday, June 02, 2009  6:13 am



Suppose the following model with 2 classes where each variable q1q4 is binary. Class 1: P(q1= 1  Class = 1) = p1_1 … P(q3 = 1  Class = 1) = p3_1 P(q4= 1  Class = 1) = p4_1 Class 2: P(q1= 1  Class = 2) = p1_2 (q4) … P(q3 = 1  Class = 2) = p3_2 (q4) P(q4= 1  Class = 2) = p4_2 In class 1 the probabilities are constant while in class 2 the probabilities depend on the value taken by the q4 variable. Therefore, in class 2 there is a specific form of causality. I have some questions for you: 1) Does this model correspond to the mplus code above? 2) If yes, we could not correctly estimate the parameters by Monte Carlo simulation. 


The code you give would not work in Mplus. If you believe that q4 influences q1, q2, and q3 in class 2, the code would be: MODEL: %OVERALL% q1q3 ON q4@0; %c#2% q1q3 ON q4; 

Vlad posted on Saturday, June 06, 2009  6:32 am



Hello, Is there any unique way to decide which model is better than another except criteria(eg:AIC,BIC and AdBIC)? Since my data fit well for both LVM and LCM. Regards, V 


You may want to include auxiliary variables (variables not used in the analysis) in such considerations. For instance, which latent class variable makes for the best distinction in terms of values of a distal outcome (predictive validity)? 

Lee J. Dixon posted on Thursday, September 24, 2009  11:21 am



Hello, I have a question identical to the one posted on 41205. However, I cannot find the Day 5 Short Course Handout that is referred to in the response you gave. Any help would be appreciated. 


The handouts can be found at: http://www.statmodel.com/newhandouts.shtml The example is in Topic 4 starting at Slide 160 with 168169 giving the interpretation. 

Lee J. Dixon posted on Thursday, September 24, 2009  2:02 pm



Thanks for your quick response. I think you meant to refer me to those pages in the Topic 3 handout. I made a mistake in stating that my question was identical to the one posted on 41205. I am looking at observed continuous variables only. Is there another way to interpret the interaction other than Cohen, Cohen, Aiken, & West's approach. So sorry for the confusion. 


You are correct. It is Topic 3. I would use the references you have for the interaction between two continuous observed variables. 


I hope this is an appropriate question to ask on this forum. Please let me know if it is not. Regarding the LMS method, Mplus provides only the unstandardized solution. I asked previously if standardizing the variables would be recommended in order to get a standardized solution and it was advised not to do so. However, in Klein and Moosbrugger (2000) page 472 it states "the data of the indicator variables were transformed into standardized scores (with zero means and standard deviation one) and analyzed by LMS....for a completely standardize model." Could you please comment again on the standardized solution in LMS? 


You can standardize after model estimation. See slides 168169 of the Topic 3 course handout. 

Rob Angell posted on Monday, March 01, 2010  1:18 pm



Dear Linda, I have been asked to do regressions for three dependent continuous latent factors (use, likeing, interest). The independent factors consist of five continuous latent factors, one of the factors is set to interact with two of the other factors making: a + b + c + d + e + a*b + a*c + error. I have used the example for latent interaction SEM in the manual. For purposes of writing up, I was planning to report the unstandardised estimates, standard error and significance (as the output) for each of the three regression analyses. What other data would you advise is also included  the loglikelihood, AIC and BIC statistics were what I was considering. Is this necessary/satisfactory for later publication? Please advise? Thanks 


Different disciplines have different ways of presenting things. I would check in the journal where you plan to send the paper and see how they do it. 


Dear Drs. Muthen, I am new to MPlus and am interested in investigating growth using multiple group multiple cohort growth model for my dissertation. I have two observed categorical predictor variables and want to create a x1*x2 interaction term. I would like to regress the intercept and the slope on x1, x2,and x1*x2. Additionally,I have nested data and would like to account for it. However,I am only interested in individual level outcome. Do I need to use DEFINE to create an interaction term (both predictors are observed categorical variables) ? What would be the best way to account for nesting (TYPE=COMPLEX or TWOLEVEL) ? I will appreciate your help. Thanks a lot, Charu Mathur 


Yes, you would use DEFINE to create an interaction between two observed variables. See Example 6.18 for a multiple group multiple cohort example. See the introduction to Chapter 9 of the user's guide where there is a brief discussion of the difference between TYPE=COMPLEX and TYPE=TWOLEVEL. 


Thanks for you response. I was running a model and got the folloeing error message: *** ERROR Unexpected end of file reached in data file. What does this error message mean, and is there a way to address the problem? Thanks, Charu Mathur 


It sounds like you are reading your data incorrectly. You may be reading it in free format but have blanks in the data. Or you have more variable names than columns in the data set. If you can't figure it out, please send the input, data, output, and your license number to support@statmodel.com. 


Dear Dr.'s Muthen, I am interested in modeling the moderating effect of a Latent construct (Relatedness) on the path between two other latent constructs (Stress and Wellbeing) Relatedness is the only Exogenous variable in my SEM model. Stress and Wellbeing are Endogenous variables. I believe I am trying to estimate an Endogenous interaction, however I am uncertain how to do this in MPlus. My SEM professor has also never run an endogenous interaction and has no idea of the syntax... any suggestions would be greatly appreciated. 


It sounds like you have stress wellb on x; stress on wellb; To make the latent variable "relate" be a moderator of stress on wellb, you add: int  wellb XWITH relate; stress on int; 


Dear Dr. Muthen, Thank you for your quick response however, I am still having problems running the iteraction. Below is my syntax. Is there something I am doing wrong? You can see from my "on" commands what I am looking at between my 7 latent variables. The interaction comes in on the path between Stress > Wellbeing. Does that make sense? Thank you! Usevariables are .... Missing are Blank; Analysis: Iterations = 10000; Type = Random; Estimator = MLR; ALGORITHM=INTEGRATION; Model: Relate by PeerRlte FamRlte TchRlte; AutoMot by IntriMot IdenMot; ExMot by q103 q108 q100; Stress by AcStress FiStress; AcadSE by CompSE SocialSE ClassSE; WellBe by EatPrWB SleepWB FlBlWB AgiWB; ImpEd by ImpSchl ImpClge; AutoMot on Relate; ExMot on Relate; AcadSE on AutoMot ExMot; ImpEd on AutoMot ExMot AcadSE WellBe; WellBe on ExMot AcadSE AutoMot Stress; Stress on AcadSE; Stress WellBe on x; Int  WellBe XWITH Relate; Stress on Int; Output: Sampstat standardized mod; *** ERROR in Model command Unknown variable(s) in an ON statement: X 


Sorry, my "x" was only meant as a place holder to show that stress and wellbe were endogenous. Just delete the line Stress WellBe on x; 


Dear Dr. Muthen, Thank you for your quick response! After making the change I was able to run the model. My final question (I hope) is how to interpret my output, as it did not give me the same fit indices as when I did not have the interaction in the model. Does this make sense? Here is what I am seeing: THE MODEL ESTIMATION TERMINATED NORMALLY TESTS OF MODEL FIT Loglikelihood H0 Value 106684.644 H0 Scaling Correction Factor for MLR 1.396 Information Criteria Number of Free Parameters 71 Akaike (AIC) 213511.288 Bayesian (BIC) 213968.871 SampleSize Adjusted BIC 213743.260 (n* = (n + 2) / 24) Also, originally I had a model that was nested by "schools" students attended, however MPlus said it would not allow me to "Cluster" by SchoolID when doing an interaction. Is this correct or is there a way around this? Thank you again! 


It is correct that you do not get chisquare and related fit statistics when you include the interaction in the model. This is because means, variances, and covariances are not sufficient fit statistics for model estimation. Please send your full output and license number to support@statmodel.com so I can see the full message. 

Dallas posted on Saturday, October 23, 2010  8:00 am



Linda or Bengt, I'd like to use the output from a model that includes an interaction term between two latent variables and generate the implied covariance matrix, given that Mplus does not output this. However, it's not clear to me how to go about doing this using the resulting parameters. I can easily match the implied covariance matrix Mplus outputs with my "by hand" calculations if I don't have an interaction term. But, I'm not sure how to do this when I have an interaction term. How (where) does the parameter for the interaction fit into the matrices (e.g., those described by Bollen)? It seems from Klein that I create a new matrix omega, but I'm still not totally clear on how to generate the implied covariance matrix. I appreciate your help. 


This is a little bit involved  see the appendix of the article An Alternative Approach for Nonlinear Latent Variable Models. Mooijaart & Bentler (2010) in SEM. And see also the MooijarSatorra (2009a) article referred to in there. 

Dallas posted on Monday, October 25, 2010  10:18 am



Bengt, Thanks for these suggestions. I will read them and see if they help. In the meantime, I have a followup question for now. Until we added the interaction, we used traditional fit indices, including the SRMR, to describe each model's fit. Mplus does not output any of these for the model with the interaction. I would expect that I could generate the implied covariance matrix (once I grasp the articles you suggested) and then develop the SRMR. It also seems I could use the loglikelihood and generate the remaining fit indices. However, what would you suggest to describe the interaction model's fit? Also, would you argue against the previous ideas? Thanks 


With TYPE=RANDOM, means, variances, and covariances are not sufficient statistics for model estimation so chisquare and related fit statistics are not defined. When this is the case, nested models are compared. The test of the interaction against zero is the same as testing a set of nested models where in one the interaction is zero. 

Dallas posted on Tuesday, October 26, 2010  3:53 am



Linda, Thank you for your reply. Could you direct me to a reference for this that discusses the fact that with TYPE=RANDOM the means, variances, and covariances are not sufficient statistics in more detail? It would seem that we could generate the chisquare by fitting the regular unrestricted baseline model (with TYPE=RANDOM and integration) and using the resulting loglikelihood from that model to compute the chisquare for the interaction model (using the scaling factors Mplus reports). This would also allow a chisquare test of the nested models. Given that you note that we should compare nested models, do you mean using the BIC and AIC? I ask because, I'm not sure what test you're referencing if we you don't mean a nested chisquare test. Thanks for your comments. 


I think the Klein and Moosbrugger (2000) article may discuss this. The reference is in the user's guide. With latent variable interactions, the loglikelihood is not a function of the covariance matrix only. What you suggest will not result in a likelihood ratio chisquare test. I think there is a recent article by Moojart and Satorra in the SEM journal that discusses the lack of sensitivity of chisquare to detect an interaction effect. You may find this of interest. 

Dallas posted on Tuesday, October 26, 2010  8:51 am



Thanks for your reply. Yes, I came back to this just now to actually post that I'd read the Mooijaart and Satorra article and it does describe why this won't result in a likelihood ratio chisquare test. Thanks for suggesting it. With that in mind, I'm still not sure how to evaluate or at least discuss the fit of the latent variable interaction, at least as implemented in Mplus. The Mooijaart and Satorra article discusses a method implemented by EQS 7, but Mplus doesn't use that approach. Any additional thoughts 


A pragmatic approach is to achieve good covariance matrix fit without the interaction and then see if the interaction is significant. Including a significant interaction presumably doesn't worsen fit. And when left out, this new literature suggests that it doesn't cause bad fit of the covariance matrix  hence the insensitivity of the regular chisquare test. The Mooijaart approach involves fitting thirdorder moments using weighted least squares. These moments can be unstable and with many variables one has to choose which ones to include. I know that there is an EQS version with this approach implemented, but I don't know if that version is generally available. 

Dallas posted on Saturday, October 30, 2010  6:34 am



Thank you for the advice. I'm thinking also of generating data that have the interaction (and the parameters of the final model with the interaction) and then seeing how the fit indices perform on the generated data when specifying a model without the interaction, though I'm thinking not much will happen to the indices given the literature. 


I have a few questions of clarification: 1. Mplus estimates latent interaction effects using Klein and Moosbrugger's LMS method, correct? 2. Using this method, can Mplus model latent interaction effects between two endogenous latent constructs? 3. To model latent construct interactions, can you use the latent construct or must you use indicator terms like those constructed by Hayduk (1987)? For instance, if I have latent construct Y1 (with indicators X1 and X2), latent construct Y2 (with indicators X3 and X4), and endogenous variable Y3, could I write the following syntax? Y1 by X1@1 X2*; Y2 by X3@1 X4*; X1 X2 X3 X4; Y1and2  Y1 xwith Y2; Y3 on Y1 Y2 Y1and2; 3. Can Mplus model more than one latent interaction effect simultaneously? I realize that many of these questions are answered in Note 6 and the Klein and Moosbrugger article, but I would like to make sure that my understandings are correct. 


1. We use maximum likelihood estimation as they but a different algorithm 2. Yes. 3. You do not need indicator terms. 4. Yes. 

ywang posted on Thursday, March 31, 2011  7:32 am



Dear Drs. Muthen: I have a question about threeway interaction among three observed variables. One is a dummy variable (male). Another is a threecategory variable, based on which I generated two dummy variable (des2 and des3) and a continous variable (agg). I wonder how to test threeway interaction among the three. The following is my input, but I am not sure whether it is correct since inter5 and inter6 are interaction between two dummy variables and might not be correct if they are mutliplied. Can you advise how to do this in Mplus? Thank you very much! Define: inter2=des2*agg; inter3=des3*agg; inter4=male*agg; inter5=male*des2; inter6=male*des3; inter7=male*des2*agg; inter8=male*des3*agg; Model: y on des2 des3 agg male inter2 inter3 inter4 inter5 inter6 inter7 inter8 


I think you would just multiply the three variables. You can see the interaction literature to see if anyone says otherwise. 


Dear, I would like to test a simple interaction in a path analysis. For example,I have the following simplified syntax: TITLE: thin ideal interactie article DATA: FILE IS Thinideal_mplus°wim.dat; VARIABLE: NAMES ARE id PS EC INTERN DRUK BUL BD; USEVARIABLES ARE PS EC BUL PSxEC; MISSING is ALL (999); ANALYSIS: TYPE = RANDOM; ALGORITHM = INTEGRATION; DEFINE: PSxEC = PS*EC; MODEL: BUL ON PS EC; BUL ON PSxEC; OUTPUT: STANDARDIZED SAMPSTAT TECH1 TECH8; My first question is whether or not I have to center the data (I got somewhat confused reading the things here above). I thought MPLUS default centered data? Second: I do not get the regular fit indices, that seemed strange to me; what I did get was the following output  however, I did not get the standardized (STDYX) estimations?: MODEL RESULTS TwoTailed Estimate S.E. Est./S.E. PValue BUL ON PS 0.055 0.058 0.944 0.345 EC 0.210 0.078 2.710 0.007 PSXEC 0.074 0.057 1.313 0.189 Thanks for your help! 


Mplus does not center by default, but interpretations of interactions may be simplified if you center. You don't get fit indices because your model does not impose restrictions (leftout paths), but is justidentified (saturated). You get STDYX if you delete Type=Random which is not needed for your model. 


I have a basic question about the creation and integration of interaction terms in semmodels. I would like to test if a categorical variable (migration background, binary coded 0/1) moderates the paths of a structural equation model in a male and female subsample. The aim is to differentiate between females with/without migration background and males with/without migration background. 1) I am not sure if my way of analysing this is right: After a single group analysis for the male and female subsample I created an interaction term to test the moderation hypothesis in both subsamples seperatly. 2) Is my syntax correct? ANALYSIS: ESTIMATOR IS ML; TYPE=Random; MODEL: f1 BY ai3 ai5 ai7 ai8; f2 BY dis2 dis3 dis5 dis6; f3 BY soz3 soz4 soz5; f4 BY struk1 struk2 struk3 struk4; f1 ON f2 f3 f4; f1 on mig; f4 ON f2 f3; migf2  mig xwith f2; f1 ON migf2; Thanks in advance for you support!!!! 


You can do it that way if you believe "mig" only influences f1. But it might have effects on the other factors as well, in which case it is better to do a 2group run for the 2 mig groups and see if f1 on f2 varies across groups. 


Yes, I also thin that mig effects not only F1. I think the problem why it would be difficult to do a multiple group analysis or a 2group analysis with the migrantvariable is that I already did a 2group run with gender and now I would like to examine the moderation effect of the migration background in these both subsamples (girls/boys with/without migbackground). now I am unsure how I could integrate mig as a moderator in this model.. 1) is there a way to do a fourgroup analysis, e.g. by somethin like "USEOBSERVATIONS ARE (gender EQ 1 AND mig1);"? and if yeswould you recommend to proceed like this? 2) if not, how could I analyse the moderator function of mig in my two subsamples? thank you in advance! 


I would do a 4group analysis. You can use DEFINE to create such a grouping variable from gender and mig and then use GROUPING = with this new variable. 


Hi, thank you very much for the response. i tried and realized that my sample is too small. I have some other questions concerning interaction effects in a mixture regression model. Is it possible to create an interaction term of a latent class variable (4classes) and a manifest continous variable to predict a continous manifest variable? If yes, should it be done with XWITH? 


This is captured by the varying across classes of the regression coefficient of the manifest continous variable on the continous manifest variable. 


Thank you... So to test if the regression coefficients from x on y are equal in all classes, one should proceed with an LCMGA, right? Is it enough just to constrain the regression coefficients to be equal in all classes and compare the BICvalues of the both models (restricted vs. unrestricted) or how could it be tested if x have a different effect on y across the classes? 


I would not use difference testing across groups with mixtures. I would use MODEL TEST to test the equality of the regression coefficients across class. 


Dear Linda, thanks again for the prompt and very helpful reply. I tried via model test what you pointed out and it seemed to work well. Now I just would like to get sure that my syntax (below) is correct, because the results show different regression coefficients for each class  anyway, I guess everything is all right, because I do not fix them with the model test option but get the result, if the model fit would drop significantly if I would fix them, right? syntax: model: %overall% int on note mig unterst erwa; class on note mig unterst erwa; %class#2% int on note (p1) mig (p2) unterst (p3) erwa (p4); %class#3% int on note (p5) mig (p6) unterst (p7) erwa (p8); %class#4% int on note (p9) mig (p10) unterst (p11) erwa (p12); 


Please show your MODEL TEST. 


This is my model test syntax  is it correctly? model test: p1 = p5; p1 = p9; p2 = p6; p2 = p10; p3 = p7; p3 = p11; p4 = p8; p4 = p12; 


That looks correct. If the pvalue of the Wald test is less than .05, it means the coefficients are not equal. So you should allow them to be free as you do. 


Thank you very much. As Wald Test of Parameter Constraints is: Value 12.806 Degrees of Freedom 8 PValue 0.1187 I guess its all right than to allow them to be free. I have one additional question  if I would like to test if this model varies by gender, I should do this with "knownclass" as described in the usersguide (p. 176), right? 


Ah no, sorry  I meant with this nonsignificance of the WaldTest, I may conclude that the coefficients do not differ between the classes... 


Yes. You can use the default of equal coefficients. 


Dear Drs. Muthen, I am concerned with model identification when running a SEM model with interaction terms in MPLUS. Your manual (exemple 5.13) suggests that the latent variables are identified by fixing the factor loadings of the first indicators to 1, which is the default choice in MPLUS. The syntax I use is: MODEL: X BY x1x3; Y BY y1y3; Z BY z1z3; INT  X XWITH Z; X WITH Z; Y ON X Z INT; Alternatively, one may set the construct variance to 1 and free the loadings of the indicator variables. Then I use the following: MODEL: X BY x1* x2* x3*; Y BY y1* y2* y3*; Z BY Z1* z2* z3*; INT  X XWITH Z; X WITH Z*; Y ON X Z INT; X@1; Y@1; Z@1; These two syntaxes produce very different results regarding the nonstandardized structural coefficients for the X=>Y; Z=>> as well as for the X*Z =>Y. I am wondering which identification methods is most appropriate and/or under what circumstances I should prefer one over the other? Thanks a lot for you help! 


When it comes to interaction modeling, interpretations are often helped by keeping variables in a zeromean, varianceone metric, so the second parameterization might be better in this regard. But the former is not wrong, gives the same loglikelihood, and when standardized should give the same results as the latter. A problem is that standardized values are not automatically provided in Mplus with latent variable interaction models (you can, however, standardize yourself as shown in one of our FAQs). 

Tyler Wray posted on Monday, September 26, 2011  4:00 pm



The model that I'm working with involves moderated mediation hypotheses. Procedures for evaluating these hypotheses involving observed variables are well spelled out in Preacher, Rucker, & Hayes (2007). Here, these authors suggest that (p. 194), in a model that examines whether the relationship between X and Y is mediated by M but also includes an association between an interaction term (XM) and Y, the interaction term (XM) should be free to covary with X AND the residual of M. So, first, it seems like the authors also suggest that this approach be employed when examining similar relationships between latent variables (instead of simply with manifest variables, as they used in their examples). Linda's post from 2/27/09 in this board would suggest that latent variable interactions (XWITH) can never be in a WITH statement at all (only on the right side of ON statements) so either the covariances are already implied by using XWITH at all or isn't necessary. If Preacher and others' guidance IS to be applied, are there any special steps that are needed in MPlus to specify the covariance between the latent variable interaction and the residual of the mediating variable? Or is this already assumed when "xm WITH m;" is specified (as in "y ON x m xm; m ON x; x WITH xm; xm WITH m;")? Thanks for your help. 


Perhaps you refer to the model figure in Panel A on p. 194. I don't see the need for correlating xm with the residual for M mentioned in the text. I have done Monte Carlo simulation studies in Mplus where I don't find a need for including this correlation in order to get correct estimation. The chisquare will be off with such an interaction term, but that's another matter. So I don't think the need is there with latent variable interaction either. 


Dear Prof Bengt and Linda I run a model with 2 latent interactions using LMS/XWITH. As, the LMS does not produce the fit index, like chi2, RMSEA and CFI, then I run two models (in two steps) to evaluate the fit of my model: 1) I run a model "without" interaction. After I achieved a good fit model, then, 2) I run a model "with" interactions using LMS. Finally, I compare these 2 models using the AIC’s value. The smaller is the better fit model. My questions: Is this a correct way to evaluate a model with interactions using XWITH? Or are there other ways to evaluate the fit of model with latent interaction using LMS? How to request for Rsquare in LMS/XWITH? Thanks 


I think that is alright. In step 2), the importance of the interaction is indicated by the significance of its influence on DVs. Rsquare needs special computations that are not available in Mplus. But you can compute it yourself after having read our FAQ "The variance of a dependent variable as a function of latent variables.." 


Dear Prof Bengt and Linda , I wanted to look at the sex X mental health on conduct problems. My sex variable is ofc categorical and mental health variable is latent (depression, anxiety) and conduct problems is also latent. so I did Usevariables are Mv81 mv115 mv97 CV8 CV10 AnxT depT gen; Categorical are Mv81 mv115 mv97 CV8 CV10 AnxT depT gen; Analysis: TYPE = RANDOM; Model: alienC by mv97 mv81 mv115 CV8 CV10; alienm by anxt dept; genxalienm  gen xwith alienm; alienC on genxalienm; I was wondering if what I did is correct. Thanks a lot for your help, Best wishes 


I think you should include the main effects as covariates along with the interaction: alienC on gen alienm genxalienm; 


Thanks a lot! I have one last question. When I run the model "MODEL FIT INFORMATION" only shows "Loglikelihood" and "Information Criteria", hence I was wondering how am I going to understand whether the model fits well? Best wishes, Tanya 


When means, variances, and covariances are not sufficient statistics for model estimation, chisquare and related fit statistics are not available. Nested models can be compared using the fact that 2 times the loglikelihood difference is distributed as chisquare. 


Dear Linda, I am very sorry but I do not understand what you mean. As you said there is no chisquare, CLI or TLI results. But I want to know if the results that I look at are interpretable. And I am not sure how I can understand that. Is there anyway that you think you can help me? Best wishes 


Dear Prof Bengt and Linda, I am still trying to understand the interaction between a latent and categorical/observed variable on a latent variable. I have run a model with xwith and created the interaction variable. However, I was wondering whether I should have centered my variables before creating the interaction variable. Secondly, when I run the model (without centering) there is no chisquare, CLI or TLI results hence I am not sure how to see a model fit. Is there a paper or manual you can guide me to? Thanks a lot 


Chisquare and related fit statistics are not developed for situations where means, variances, and covariances are not the sample statistics used for model estimation. With XWITH, the model is fitted to raw data. You will not get absolute fit statistics. In these cases, nested models are compared using the fact that 2 times the loglikelihood difference is distributed as chisquare. You can also look at TECH10. It is not necessary to center the latent variable in an interaction. You should only center continuous covariates not binary covariates. 


Thanks! I tried running the TECH10 but the output was empty (without any warning massage). I am using mplus 6.11. Does that mean a problem with my model? 


I would need to see the output to answer that question. Please send it and your license number to support@statmodel.com. 

sailor cai posted on Tuesday, March 20, 2012  4:06 am



Hi Drs Muthen: If I want to test the following model (all with continuous indicators): F1>F2 F1>F3>F4 F2>F3>F4 F3xF1>F4 F3xF2>F4 Questions: 1) Can I do it simultaneously? Or is it possible to model indirect latent effect and latent interaction simultaneously? 2) If no, what steps should I follow if I want to obtain: a. total effect of F1, F2, AND F3 ON F4? b. standardized estimates of F1, F2, F3,F1xF3, F2xF3? Thanks in advance! 

sailor cai posted on Tuesday, March 20, 2012  4:10 am



To add up: There are two indicators for F3, three for F1 and four for F2. 


You can test the model simultaneously. See Example 5.25 in the Mplus User's Guide. 

sailor cai posted on Tuesday, March 20, 2012  7:54 pm



Thanks for the quick reply. To test the equation of F4 = b1*F1 +b2*F2+b3* F3+b4* F3xF1 + b5F3xF2 (Equation 1),I performed the following analysis: ANALYSIS: TYPE=RANDOM; ALGORITHM=INTEGRATION; MODEL: ¡ F2 ON F1; F3 ON F1 F2; F4 ON F3 F3xF1 F3xF2; F3xF1  F3 xWITH F1; F3xF2  F3 xWITH F2; OUTPUT: TECH1 TECH8; What Mplus gave are unstandardized estimates of b3, b4,b5, as well as F2 ON F1 (b21); F3 ON F1 F2 (b31, b32); To calculate b1 and b2: b1 = b31 *b3 + b21*b32*b3;b2=b32*b3 To standardize these b¡¯s Equation 1, by taking on Handout Topic 3 P168 as advised by Dr Muthen (Bengt), this would be to standardize with respect to F1, F2, F3, F3xF1 F3xF2. Question 1: Is my solution for calculating b1 and b2 appropriate? Question 2: But how to standardize with respect to F1, F2, F3, F3xF1 F3xF2? I believe you have explained it elsewhere and I have read about it. I apologize that I am still unclear about it. Can you kindly give a simple example of doing this (especially for cases with two interactions)? Your patience will be very much appreciated! 


Hi Linda  2 questions this time 1. Where can I read what it means that an interaction including one or two latent variables requires a random part to the model? 2. I'd like to estimate a model with an indirect (mediation) effect that also includes a latent variable interaction, but that's not possible with TYPE=RANDOM. (At least, the MODEL INDIRECT statement cannot be used.) Do you have any examples for how this can be done? Thanks! Bruce 


1. I don't know where to point for reading about it, but it can be understood from first principles. A random effect is a latent continuous variable. An example is a random slope multiplying an observed x variable. With a latent variable interacting with x you have the same thing. With two latent variables interacting, you have a product of two random effects. 2. You can always use Model Constraint to define any new parameter, such as a product of two slopes representing an indirect effect. 


Answer to the 3/20 question of Sailor Cai: Please read the new FAQ on our website: 3/24/12: Latent variable interactions and generalize from that description to your situation. 


1. Thanks very much for your kind reminder, Bengt! You might have said, "Well, Duh!" in addition! Of course it follows from first principles, and I should thought it through further before using up your weekend time to remind me. I was thinking of TYPE=RANDOM solely in the "random intercepts, random slopes" context for growth models. But of course, because factors as latent variables involve (at least) measurement error and the residuals vary across observations, the use of a latent factor to compute another latent variable  like an interaction  produces a latent interaction variable that is also a random variable and has to be estimated that way. 2. And of course the Model Constraint approach to testing mediation just goes back to the "mediation as the product of the two slopes" approach. I just do it myself instead of having the Model Indirect statement do it for me! Thanks again for your patient teaching style! You're a great role model. Bruce 

sailor cai posted on Sunday, March 25, 2012  6:39 pm



Thanks a lot, Bengt. That really helps! So to generalize Equation 5 in the ¡°FAQ 3/24/12: Latent variable interactions¡± to my situation posted on Tuesday, March 20, 2012. So I can have: V4= ¦Â1sqV¦Ç1 + ¦Â2sqV¦Ç2 + ¦Â3sqV¦Ç3 + 2¦Â1¦Â2V¦Ç1V¦Ç2 + 2¦Â1¦Â3V¦Ç1V¦Ç3 +2¦Â2¦Â3V¦Ç2V¦Ç3 + [¦Â13sqV¦Ç1V¦Ç3 +(V(¦Ç1*¦Ç3))sq]+ ¦Â23sq(V¦Ç2V¦Ç3 + (V(¦Ç2*¦Ç3))sq) + residualV4 Just want to confirm my understanding. So if there is no problem, don't bother to reply. Many thanks again for your patience and detailed illustration! Sailor 


Your formula did not show up properly. And, you need to say if this is the DV variance related to your F4= formula. 

sailor cai posted on Monday, March 26, 2012  5:38 pm



Thanks a lot for the reminding. So for the following structural model: F1>F2>F3>F4 F1>F3>F4 F1XF3(interaction)>F4 F2XF3(interaction)>F4 1) what will be the right formular for computing total variance of F4 explained? Or can you recommend any reference that provides the formular for two LV interactions? 2) while it is possible,by applying Mooijaart& Satorra(2009), to partial out the contribution of the latent interaction terms to the total variance explained of F4,is it possible to partial out each individual latent variable's(F1, F2, F3 )contribution to total variance of F4 explianed by the whole model? Sorry for being clumsy and your further clarification will be very much appreciated! 

N Landauer posted on Monday, August 06, 2012  2:18 am



Dear Bengt, I would also be interested in this formlua as I tried in vain to transfer it to my model which contains an interaction between two exogenous latent variables. Specifically, I struggle with the covariance between the two independent factors which constitute the interaction. I really hope that you can help me. Thanks a lot, in advance. Best Nina 


See the FAQ on the website called Latent Variable Interactions. 


Dear Bengt and Linda, I wanted to examine the interaction effect (F XWITH gender) and main effect (gender) on a continuous observed indicator (Y1) of a continuous latent variable (F). Model: F by Y1* Y2 Y3 Y4 Y5; F@1; Fgender  F XWITH gender; F ON gender; Y1 ON gender Fgender; I am wondering if what I do is correct. Thanks, 


This looks correct. 


Linda, thanks for the quick reply. One additional question: are there any reference, documents, or Mplus technique reports explaining how this XWITH option implemented in Mplus, you would know of? I have already checked LMS (Klein & Moosbrugger, 2000) and QML (Klein & Muthen, 2007), but both of them are dealing with a latent interaction effect (i.e., two latent variables). However, I am now working on the interaction effect of a latent variable and a binary variable. Thank you very much for your help. 


There is no document. The sample principles are used. 


Thank you for your reply. I am not sure what you mean by "The sample principles are used," could you please kindly elaborate it further?? Thank you very much!! 


I meant the same principles. 

Xiaoxia Cao posted on Thursday, September 06, 2012  12:02 pm



Dear Drs. Muthen, I’m testing the effects of two IVs (gender and frame) manipulated in an experiment on the continuous latent outcome variables via continuous latent mediators. Each IV has two levels. I’m interested in testing not only the main effects but the interaction effect of the two IVS . Now here are my questions. 1) What I did now is that I created an interaction term using SPSS after centering each IV, imported it into Mplus, and ran a mixed model analysis (a combination of factor and path model analysis) including test of indirect effects. Is this approach correct? If not, what would you suggest? 2)Would you suggest that I create the interaction term using the define command in Mplus instead? If so, should I center each IV before using define command to create an interaction term? 3) If I found a statistically significant interaction effect, how should I interpret the findings, possibly diagram it? Thank you very much for your help. Xiaoxia 


Either 1) or 2) sounds fine. I don't know what you need to center your binary IVs. For 3), see the regression literature on interactions such as the AikenWest book. 

Xiaoxia Cao posted on Sunday, September 09, 2012  9:22 am



Thank you for your responses. Xiaoxia 


Dear Drs. Muthen, Thank you for this very helpful support tool. Referring to your manual 3/24/12`Latent variable interactions` I would like to ask you some things: A) I tried to compute the standardized Betas taking the parameters given in you example in 0.1.4 with Eta3 is the DV and Eta1 ist one of the IVs with the usual formula. (Beta1=.5; SD(eta1)=Root of 2; SD(eta3)=root of 3.17). Standardized Beta*1=0.5x(root of 2)/(root of 3.17)=.397 In the manual the result of the standardization of Beta*1 is .199 I wonder what I did wrong? B) What do you think of the proposal to standardize the nonlinear interaction term of Wen, Marshal & Hau (2010)? They suggest to "standardize" the Beta*3 (Interaction) like that: "standardized" Beta**3= Beta*3x(root of var(eta1)xvar(eta2)/sd(eta3) Thanks a lot! Yours sincerely, Kathrin Bürger 


Where did that reference appear? 


Sorry for not mentioning the complete source...it is Wen, Z., Marsh, H.W., Hau, K. (2010). Structural Equation Models of Latent Interactions: An Approptiate Standardized Solution and Its ScaleFree Properties. Structural Equation Modeling: A Multidisciplinary Journal Volume 17, Issue 1, 2010 looking forward to get your opinion. Best, Kathrin 


The answer to your A) question is given in the post I just did under Interaction. The answer to your B) question is that this is how I do in the FAQ note, so I think it makes sense. 


Hello Mr. Muthen, thanks a lot for the new FAQ paper on latent interaction and for your answer. Kathrin 

sailor cai posted on Wednesday, September 26, 2012  3:11 am



Dear Dr Muthen, I have a quick question about the effect size(total variance explained) of latent interaction: Adding a latent interaction in a SEM model will also lead to added total variance explained of the criterion variable, if the interation is significant? Thanks! Sailor 


This is most likely going to be the case. 

sailor cai posted on Tuesday, November 06, 2012  7:01 am



Dear Dr Muthens, Two questions about testing interaction between a latent variable (say F1) and an observed variable (say Y1). It seems to be suggested that a twosteps "XWITH" method can be used. My question are: 1. Centering the observed variable is a MUST or an OPTION? Or can I use XWTIH without centering? 2. If centering is a MUST, and to take your twosteps suggestion(a, centering it by hand and save, b using the XWITH procedure), then I will have another question: does this mean the "Y1XF1" becomes an additional independent variable? ( I have this question because I read whereelse that interaction between two latent variables using LMS method is not an independent variable). Thanks! 


1. Centering is not a must but can make interpretation easier. 2. Yes, the interaction becomes another independent variable. 


Hello Drs. Muthen, I am trying to run a moderated mediation analysis with three factors and one measured variable. X, M, and Y are factors and my moderator is measured(influencing the MY AKA b path). My understanding is that I need to use the XWITH command to create an interaction term. However, when I use XWITH, I cannot get an estimate of the indirect effect. Is it possible to due such an analysis in Mplus? Thank you! 


If the moderator is categorical, you can do this as a multiplegroup run based on its categories, avoiding XWITH. But to answer your XWITH indirect question, you can always form your own indirect effects using MODEL CONSTRAINT. 


Thank you, Dr. Muthen. After doing some other analyses, we decided that we would take out some factors and instead use measured variables in portions of our analyses. Consequently, I can just use the define command instead of XWITH. I got the syntax to run, but the moderation occurs on the "a" path (i.e. xm) and not on the "b" path (i.e. my). Can I change the syntax to move where the moderation occurs in the model? Here is the working syntax: TITLE: Moderated Mediation Second Try DATA: FILE IS C:\Users\TEMP.FOREST.003\Desktop\AUACSSMplus.csv; VARIABLE: NAMES ARE PID Age Gender Alcdays MostAlc WklyAlc AUD_sx RAPItot CAPSpers CAPSsoc DERStot Mindful BIStot SCStot SRQtot; Missing is Alcdays MostAlc (999); USEVARIABLES = Age Gender Alcdays MostAlc WklyAlc AUD_sx RAPItot CAPSpers CAPSsoc DERStot Mindful BIStot SCStot SRQtot Int; DEFINE: Int = Mindful*WklyAlc; ANALYSIS: ESTIMATOR = BAYES; PROCESSORS = 2; BITERATIONS = (30000); MODEL:f2 by AUD_sx RAPItot CAPSpers CAPSsoc; f1 by BIStot SCStot; MODEL: f2 ON WklyAlc (b); WklyAlc ON f1 (gamma1) Mindful Int (gamma2); MODEL CONSTRAINT: PLOT(indirect); LOOP(mod,2,2,0.1); indirect = b*(gamma1+gamma2*mod); PLOT: TYPE = PLOT2; OUTPUT: TECH8; Thank you! 


This input looks like it correctly follows ex 3.18 from the Version 7 User's Guide that is on our web site. Make sure that the two variables that interact have means zero before you multiply them. Also make sure that the moderator has variance 1 if you are going to use the 2, 2 range in the LOOP plotting. 


Dear Drs. Muthen, I want to use the trajectory of binge drinking (piecewise growth model with 2 intercepts) to predict AUD disorders in emerging adulthood (intercept only model). I want to test whether there is an interaction between the intercepts and slopes of binge drinking in addition to the main effects. But model won't run with the interaction terms. Model: i1 s1  y15@0 y16@.1 y17@.2 y18@.3 y19@.4; i2 s2  y20@0 y21@.1 y22@.2 y23@.3 y24@.4 y25@.5; ia  AUD20@.5 AUD21@.4 AUD22@.3 AUD23@.2 AUD24@.1 AUD25@0 ; i1 on sexw1; i2 on sexw1; s1 on sexw1; s2 on sexw1; ia on i1 s1 i2 s2 ; i2s2  i2 xwith s2; ia on i2s2; I get the following error message THE ESTIMATED COVARIANCE MATRIX COULD NOT BE INVERTED.COMPUTATION COULD NOT BE COMPLETED IN ITERATION 21.CHANGE YOUR MODEL AND/OR STARTING VALUES. Your help would be greatly appreciated! Thanks Kara 


Please send the output without the interaction and the output with the interaction along with your license number to support@statmodel.com. 

Kätlin Peets posted on Thursday, November 07, 2013  8:19 am



HI, I would like to conduct followup analyses (simple slope analyses) for my significant threeway interaction (threeway interaction is between two continuous and one categorical variable). I think my model constraint is set up correctly but I would like to verify whether this is the case. So, I am estimating x’s effect on y when z = 1 and w = 1. MODEL: ZDISCT2 on ZDISCT1 zesteemt1 sex grade zfriendn12 FRIENDG ; zdisct2 on zselfn12 (x); zdisct2 on selffrie (xz); zdisct2 on selfg (xw); zdisct2 on threeway (xzw); MODEL CONSTRAINT: New (slope); slope = (x + xz*(1) + xw*(1) + xzw*(1)*(1)); 


That looks correct. 

ck posted on Monday, November 11, 2013  8:20 am



Dear Drs. Muthen, In a path model with only observed variables, I have a significant indirect effect of an interaction (continuous variable by continuous variable), such that a*b predicts z via y and x. a*b > x > y > z. While I can interpret the effect of a*b on x directly, I would be grateful for advice on how to understand the effect of a*b on z in Mplus. Many thanks! 


Since this is a general modeling question you may want to ask it on SEMNET. 


From reading through this thread I gather that when using a LMS approach meancentering a observed variable might be necessary when it serves as the moderator, but we should not meancenter latent variable indicators, when the latent variable is the moderator itself. Is this the case even when nonnormality among the indicators is evident? 


From reading through this thread I gather that when using a LMS approach meancentering a observed variable might be necessary when it serves as the moderator, Yes but we should not meancenter latent variable indicators, when the latent variable is the moderator itself. Yes Is this the case even when nonnormality among the indicators is evident? Yes 


Dear Bengt or Linda, I refer to your latent variable interaction example in B. Muthén 2012, Figure 2, p.7, which fits my research question: http://www.statmodel.com/download/LV%20Interaction.pdf I have two related questions and hope you can help me: 1. In this example Eta1 is endogenous. However, the example does not mention the impact of effect beta (regression Eta1 on Eta2) on the overall results. Apparently, all coefficients (interaction + main effects) change if this relation is just defined as a simple correlation (at least that’s what I find). To be honest, I am not sure how to present the interaction correctly. What would you recommend in this regard? 2. More specifically, how would you specify/plot the interaction effect for the total impact of Eta2 on Eta3 for different levels of Eta1 (not in the example), provided that Eta1 is endogenous as in the example? 


1.It sounds like your situation is best described by eta1 being exogenous just like eta2. You are right that this is different from Figure 2. It is like (a part of) Figure 1 for which formulas are given in my note. 2. I think it seldom makes sense to condition on eta1 when that is endogenous. If instead it is exogenous, your plot would consider (compare formulas 2325) E(eta3  eta2, eta1=a) where a corresponds to the 0, 1, 1 values and the x axis of the plot is eta2. 

Anonymous posted on Monday, January 20, 2014  1:32 pm



Hello! I am running an SEM with two latent factors Y1 and Y2 each based on observed variables h1h5 and k1k9. The predictors of Y1 and Y2 are as well latent: Z1 and Z2 (plus some observed variables). I define Z1 and Z2 in the MODEL section, i.e. Z1 BY x1x9. I would like to create an interaction term between an observed variable (moderator)and a latent variable that is an predictor. I created the interaction term mZ1= m*Z1 in the DEFINE command and listed mZ1 in the usevariables section. When I run the analysis, I get an error: "Undefined variable used in transformation: Z1." why is this happening and what can I do? Is it impossible to create an interaction term between a latent variable and an observed variable, because the latent variable is defined in the MODEL command later, while the interaction term is defined in the DEFINE command before? 


You need to use the XWITH option to create an interaction between an observe variable and a latent variable. 


Hi, Dr. Muthen, I have two questions about modeling interactions with SEM or MLSEM. 1. Can we specify the interaction term between two secondorder factors? If not, what should we do if we have multiple latent factors for each of the two constructs. To be clear, suppose I have X, Y and Z. And we want to know how Y moderate the relation between X and Z. If both X and Y contain three latent factors and secondorder model is supported for both X and Y, can we specify interaction term between the two secondorder factors? If no, how should we specify the interaction between the two constructs X and Y? Can parceling the indicators be an alternative strategy? 2. Can we specify interaction term with multilevel SEM? Thank you very much! 


1 and 2. Yes you can with the XWITH command 


Hi, Tihomir, Thank you so much for your reply! Many thanks! 


Dear Drs. Muthen I followed your suggestion to plot the latent interaction using Loop, whether can i get directly the simple slope and the P value. Thank you very much! 


You can express the simple slope in Model Constraint as a NEW parameter tha tis a function of model parameters, using parameter labels in the Model statements. This gives the estimate, the SE, and the pvalue. 


Thank you very much! 

Back to top 