Programming the statistical procedures from SAS

question about variable selesction

Reply
Contributor
Posts: 73

question about variable selesction

Hi All,

 

Here I have a question about variable selesction in SAS. Say I have the following data set:

 

age gender  height    weight    death

89        0           .          110         1

70        1          58            .          0

50        1         173        130        1;

 

And I want to fit a logistic regression with backwards variable selection, so I coded like this:

 

proc logistic data=have descending;

class gender;

model death = age gender height weight /selection=backward fast ;

run;

 

But since the data has missing value, only the last obs will be used to do this model selection (i.e program will delete entries that has missing values based on full model).

 

But, I want the program to include more obs when it evaluate model with: age gender height, i.e. use obs 2 and 3. Is there a command to make this haapened in SAS ?? 

 

Thank you very much!

 

Best,

 

SAS Super FREQ
Posts: 3,306

Re: question about variable selesction

In classical linear models, the regression needs to form the so-called SSCP matrix X`*X.  To form this matrix product require removing observations that have missing values.

 

See a previous discussion about this topic for other options, including multiple imputation with PROC MI.

 

If you are committed to PROC LOGISTIC, multiple imputation is a good solution. For survey data, SAS provides PROC SURVEYLOGISIC. If you can express your model as a mixed model, PROC GLIMMIX handles missing data differently.

 

There is extensive literature in this area. I particulalry like the research and suggestions by Paul Allison, and recommend that you do an internet search for

logistic regression "missing data" site:statisticalhorizons.com

Contributor
Posts: 73

Re: question about variable selesction

Hi Rick,
Thank you for your solution!
Yes, imputation is a way to address missing values. But I'm not looking for imputation. I just want to use the information I collected, for this is patient information I'm dealing with.

I want SAS to add more observations, ( i.e. increase the dim of X) when less covariates are considered. Do you have a suggestion for this?

Thanks again!!!

Best wishes.
SAS Super FREQ
Posts: 3,306

Re: question about variable selesction

I don't understand what you mean by "add more observations." SAS (and all statistical software) analyzes the data you have. Can you provide an example? For the data you've presented, what would you like to happen if only two or three covariates are being analyzed?

Contributor
Posts: 73

Re: question about variable selesction

Dear Rick,
I have around 1,000 obs of 26 variables and one outcome. but only 300 obs are complete. So I will lose a lot information, if I only use the complete observations.
Say for first 100 obs, only variable1 is missing, when I run the model outcome=variable2-26, I want the first 100 obs to be added to the matrix. In this way I feel like I can make more use of the information collected.
Is this make sense? If it does, can I use SAS to realize this?
Thank you!!
Best wishes.
SAS Super FREQ
Posts: 3,306

Re: question about variable selesction

I am not aware of any variable selection technique for logistic regression in which different observations are used for different sets of candidate variables.

 

There are other predictive models that are more tolerant of missing values.  You might look at PROC HPSPLIT, which uses tree-based models for building regression models.

Contributor
Posts: 73

Re: question about variable selesction

Dear Rick,

Thank you very much! I will look into it.

Have a nice day~

Best wishes.
Ask a Question
Discussion stats
  • 6 replies
  • 241 views
  • 0 likes
  • 2 in conversation