08-13-2014 04:35 PM
I am working on a logistic regression-- binary outcome. The 1 (or the event) has a sample size of 600, while the 0 (non-event) has a sample size of 8000.
How do I extract a random sample of 600 of the non-event? It seems like proc suveyselect only lets me take a random sample of all participants, not just those who fall in the non-event.
Thanks so much!
08-13-2014 04:54 PM
On the input dataset name use the where option to select input records only for specific values. This completely subsets the data. The selection probability and weights will only work for that subset so be careful.
proc surveyselect data=lib.have (where=(eventvariable = 0)) ....
08-15-2014 02:52 PM
Seems like trying to make a dataset containing equal number of event and non-event cases. Try this to get the desired sample dataset.
if y=1 or (y=0 and ranuni(1234)<0.075) then output; /* Suppose y is the event variable */
08-15-2014 03:08 PM
When I used the code that you suggested, I got: data set has 0 observations and 1 variable.
I am trying to make a dataset containing an equal number of event and non-event cases.