BookmarkSubscribeRSS Feed
Calcite | Level 5

Hello! First post here, and I am super new to SAS, so please bear with me!


I am working on addressing some missing data in this data set I have. I decided to use the Full Information Estimation Likelihood (FIML) method to estimate the mean values of my missing data. I used the following code to yield the estimates:


proc calis data=[name of data set] method=fiml;

mstruct var=[listed pertinent variables here];



Now that I have all the estimates I need for the missing data, I am unsure how to proceed with integrating them with the rest of my data. Is it as simple as using a series of "if then" statements (e.g., if [variable 1] = . then [variable 1] = [estimated mean]) to plug in the missing values? Or is it something more complex than that?


Thank you for your consideration!

Calcite | Level 5



Thank you so much for sending those resources! I have reviewed them, but unfortunately they don't quite address my confusion. Previously, I had ran some analyses to calculate effect sizes from one set of variables to the other, but we later decided that we wanted to impute missing values rather than use listwise deletion. I have successfully run the proc calis code (with the FIML option), and I have output that tells me the mean and co-variance structures of the estimation, such as the estimate of the variables, their standard errors, t values, and p values. I am just confused on what to do next. Do I just re-run the previous effect size analyses, and will that take into account the estimated values I just got from my proc calis code? Or do I have to do something else to ensure the estimated values are accounted for in my effect size calculation?


I apologize if my description of the problem is confusing. I am doing the best I can with the knowledge I have. Thank you again for considering!



SAS Employee

Thanks for providing more input! We have moved your post to another board to see if more users might provide feedback. If you still need help on this, you may also try reaching out to our technical support department


What is the final goal of your analysis? Are you trying to perform some regression? Estimate variance? Impute the data to construct a predictive model?



1. if you are interested in inferential statistics such as standard errors, confidence intervals, and p-values, then use PROC MI and PROC MIANALYZE to perform multiple imputations.

2. If your data are from a statistical survey, use PROC SURVEYIMPUTE instead.

3. If you are interested in predicted values for machine learning/data mining applications, some people use mean imputation.






The early bird rate has been extended! Register by March 18 for just $695 - $100 off the standard rate.


Check out the agenda and get ready for a jam-packed event featuring workshops, super demos, breakout sessions, roundtables, inspiring keynotes and incredible networking events. 


Register now!

What is ANOVA?

ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 4 replies
  • 3 in conversation