BookmarkSubscribeRSS Feed
ksabourin
Calcite | Level 5

Hey all,

 

I'm trying to impute around 25 categorical variables using the fcs function. I have another 30-40 variables I want to use to help with the imputation but want them left as they are (i.e. don't fill in missing values). I want to do this mostly for computing time reasons. I won't actually be adding more than 5-6 of my explanatory variables into my final model so I don't need them to be complete. Once added to the variable statement missing values are automattically imputed, which takes forever. Is there a way to include variables in the MI process that are not actually imputed themselves in SAS 9.3? 

 

Thank you for any help you can give.

2 REPLIES 2
SteveDenham
Jade | Level 19

This may seem like the long way around Robin Hood's barn, but you could set a flag variable in a datastep to say whether the variable in question is missing, then go ahead and impute using whatever method you wish.  After that, in another data step, use the flag variable to set the imputed value back to missing.

 

It just depends on how you want to use those variables.

 

Steve Denham

crisgugiu
Fluorite | Level 6

Did you ever figure out a solution to this issue? I am facing the same situation. I have close to 200 variables that I need to impute, most of which are ordinal. I am using FCS since it can handle continuous, ordinal, and discrete data. However, the full imputation model takes about three days to run. OUCH! Moreover, I have too many variables for my sample size (498). Consequently, the model was not able to impute several variables; basically, it could not impute the majority of continuous variables that also happened to have the highest missing response rate. Hence, I would like to break up the imputation in two parts: use MCMC for the continuous data and FCS for the ordinal and discriminant data. Unfortunately, I cannot see how to exclude variables from being imputed but still used them as predictors. How did you resolve this problem? There is no real advantage to using the method that was suggested to your question because it would not save runtime.

 

Cristian

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

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
  • 2 replies
  • 2228 views
  • 2 likes
  • 3 in conversation