Help using Base SAS procedures

Getting percentage for more than one variable within ID

Accepted Solution Solved
Reply
Occasional Contributor
Posts: 10
Accepted Solution

Getting percentage for more than one variable within ID

Hello ,

I'm trying to get the percentage of 1=Yes values for each question (Q1,Q2 etc)  within each ID variable.  Below is my data sample and desired output.

I did this using PROC SQL with sub queries but I'd like to get the same results using one of SAS procedure, I don't know maybe proc tabulate or proc freq etc... Could you please help ?

Data

IDQ1Q2Q3Q4
A1111
A1010
A0010
A1100
B1100
B0101
B0010

Output

IDQ1_PQ2_PQ3_PQ4_P
A0.750.50.750.25
B0.33330.6666670.33330.3333

Accepted Solutions
Solution
‎02-04-2014 05:40 PM
Respected Advisor
Posts: 3,773

Re: Getting percentage for more than one variable within ID

I don't know if it needs transpose or not.  Maybe you just want percent.

proc summary data=q nway;
  
class ID;
   output out=percent mean(qSmiley Happy=;
   run;

View solution in original post


All Replies
Respected Advisor
Posts: 3,773

Re: Getting percentage for more than one variable within ID

I would go ahead as get N, count, and percent.

data q;
   input ID:$1. Q1-Q4;
   cards;
A 1 1 1 1
A 1 0 1 0
A 0 0 1 0
A 1 1 0 0
B 1 1 0 0
B 0 1 0 1
B 0 0 1 0
;;;;
   run;
ods select none;
proc means n sum mean stackods;
   class id;
   ods output summary=summary(rename=(sum=count mean=percent));
   run;
ods select all;
proc print;
  
format _all_;
   run;
Occasional Contributor
Posts: 10

Re: Getting percentage for more than one variable within ID

Thank you, it seems like your process also needs transpose procedure for the output. I'll work on that.

Solution
‎02-04-2014 05:40 PM
Respected Advisor
Posts: 3,773

Re: Getting percentage for more than one variable within ID

I don't know if it needs transpose or not.  Maybe you just want percent.

proc summary data=q nway;
  
class ID;
   output out=percent mean(qSmiley Happy=;
   run;
Occasional Contributor
Posts: 10

Re: Getting percentage for more than one variable within ID

Thank you so much, I learned another procedure today...way better than Proc sql....

Best Regards...

☑ This topic is SOLVED.

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

Discussion stats
  • 4 replies
  • 186 views
  • 1 like
  • 2 in conversation