Message/Author 

Ewan Carr posted on Friday, September 13, 2013  6:52 am



I'm estimating a twolevel random slope model with the Bayes estimator. I have missing data on one independent variable. I'm trying to impute this variable using the H0 approach. 1) Am I correct in understanding that, if I use the H0 approach, I can't use the BAYES estimator in the subsequent analysis model?
quote:ESTIMATOR=BAYES is not available with TYPE=IMPUTATION in the DATA command.
I want/need to use Bayesian estimation (due to small level2 sample size; 22). But I also need to impute the missing values. 2) Is this impossible in Mplus? 3) Are there any alternative approaches to imputing the data that would allow Bayesian estimation? (e.g. using plausible values) Many thanks, Ewan  


You should include your independent variable in the model by mentioning its mean or variance parameter. Then Bayes can be used. 

Ewan Carr posted on Monday, September 16, 2013  2:33 am



Thanks for your reply. However, I'm not sure I understand. My imputation model looks like:
quote:TITLE: DATA: file = ess5.dat; VARIABLE: [...] usevariables = satlife sec1 income; cluster = cntry2; within = income sec1; ANALYSIS: type = twolevel random; estimator = bayes; processors = 2; MODEL: %WITHIN% s  satlife ON sec1; [income]; %BETWEEN% satlife; s; DATA IMPUTATION: impute = income; ndatasets = 5; save = H0_impute*.dat;
And the analysis model looks like:
quote:TITLE: DATA: file = H0_imputelist.dat; type = IMPUTATION; VARIABLE: names = SEC1 SATLIFE INCOME CNTRY2; missing = *; usevariables = all; cluster = cntry2; within = income sec1; ANALYSIS: type = twolevel random; estimator = bayes; MODEL: %WITHIN% s  satlife ON sec1; satlife ON income; %BETWEEN% satlife; s;
I still get the error: "BAYES not available with TYPE=IMPUTATION". Any idea where I'm going wrong? Many thanks. 


Following is what Bengt suggested. You cannot do multiple imputation and use Bayes. Bayes is essentially doing multiple imputation behind the scene. TITLE: DATA: DATA: file = ess5.dat; VARIABLE: names = SEC1 SATLIFE INCOME CNTRY2; missing = *; usevariables = all; cluster = cntry2; within = income sec1; ANALYSIS: type = twolevel random; estimator = bayes; MODEL: %WITHIN% s  satlife ON sec1; satlife ON income; %BETWEEN% satlife; s; 


Also, add the variance of income to the MODEL command to avoid losing cases with missing on income, for example, %WITHIN% s  satlife ON sec1; satlife ON income; income; 

Ewan Carr posted on Tuesday, September 17, 2013  2:35 am



Thank you Linda and Bengt — that worked perfectly. One final question: what should I call this method? I'm responding to reviewer comments who have recommended multiple imputation. I'm wondering how I should explain the above technique. If Bayes is doing "multiple imputation behind the scenes" then is this multiple imputation? Many thanks for your help with this, Ewan  


I don't think this has a name. No, Bayes takes an approach similar to FIML. 

Ewan Carr posted on Thursday, September 19, 2013  9:33 am



OK great, that's very helpful. So when explaining what I've done about missing data I'll refer readers to the FIML literature. Many thanks, Ewan. 


Hi Linda and Bengt, Similar to the Mplus user above, I am trying to use TYPE = IMPUTATION (to read in 20 plausible values that I already have, for my dependent variable). But I also want to use ESTIMATOR=BAYES and I am getting the message indicated by tue user above. Given that I am using multiple imputation for my dependent rather than independent variable, is there anything I can do, in order to use both TYPE = IMPUTATION and ESTIMATOR=BAYES? Thank you. 


Please send the output where you get the message to Support. 


I would use Estimator = Bayes on the original data rather than on the imputed data. Using Bayes on imputed data creates technical issues for the credibility intervals so Mplus does not allow it. 

Back to top 