Help using Base SAS procedures

Id list of all missing entries for all variables next to the cross tabulations

Accepted Solution Solved
Reply
Contributor
Posts: 54
Accepted Solution

Id list of all missing entries for all variables next to the cross tabulations

Hello there,

I need to get the list of id for all variables with missing entries and also the cross tabulations of non-missing entries for all variables excluding long list of variables to print (for instance dates or id)

 

for example:

 

proc freq data=x;

tables _all_/nopercent nocum; also, would like to exclud some long list variables la dates how do I exclude specific variables?

run;

 

example: the output would look like:

sex   N=

F      10

M      20

Missing 10

Id of missing

1,2,3,4,5,6,7,8,9,10

 

your help will be very much appreciated it

 

Thanks 

Lalohg

 

 

 


Accepted Solutions
Solution
‎06-05-2018 01:44 PM
Valued Guide
Posts: 597

Re: Id list of all missing entries for all variables next to the cross tabulations

How do you want to include then?

 

One way is use OUTPUT in the do loop, which returns all rows and only the last. will contain the list of id's missing.

 

data want;
format id_list $50.;
do until (last.gender);
set have;
by gender;
if first.gender then count=1;
else count+1;
id_list=strip(id_list)||","||strip(put(id,3.));
output;
end;
run;
Thanks,
Suryakiran

View solution in original post


All Replies
Valued Guide
Posts: 597

Re: Id list of all missing entries for all variables next to the cross tabulations

I don't think you can get the list of missing id's in proc freq. You can try something like this:

data have;
infile datalines missover;
input id gender $;
datalines ;
1 M
2 F
3
4 M
5 
6 M
7 
8 F
;
run;
proc sort data=have;
by gender;
run;
data want(drop=id);
format id_list $50.;
do until (last.gender);
set have;
by gender;
if first.gender then count=1;
else count+1;
id_list=strip(id_list)||","||strip(put(id,3.));
end;
run;
Thanks,
Suryakiran
Contributor
Posts: 54

Re: Id list of all missing entries for all variables next to the cross tabulations

Posted in reply to SuryaKiran
Thanks SuryaKiran,

It worked great! but I have a data set with several variables, is there a
way to include all variables?

Thanks

Lalo
Solution
‎06-05-2018 01:44 PM
Valued Guide
Posts: 597

Re: Id list of all missing entries for all variables next to the cross tabulations

How do you want to include then?

 

One way is use OUTPUT in the do loop, which returns all rows and only the last. will contain the list of id's missing.

 

data want;
format id_list $50.;
do until (last.gender);
set have;
by gender;
if first.gender then count=1;
else count+1;
id_list=strip(id_list)||","||strip(put(id,3.));
output;
end;
run;
Thanks,
Suryakiran
Contributor
Posts: 54

Re: Id list of all missing entries for all variables next to the cross tabulations

Posted in reply to SuryaKiran

Thanks!

☑ This topic is solved.

Need further help from the community? Please ask a new question.

Discussion stats
  • 4 replies
  • 160 views
  • 0 likes
  • 2 in conversation