## Getting percentage for more than one variable within ID

Solved
Occasional Contributor
Posts: 10

# 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

 ID Q1 Q2 Q3 Q4 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

Output

 ID Q1_P Q2_P Q3_P Q4_P A 0.75 0.5 0.75 0.25 B 0.3333 0.666667 0.3333 0.3333

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

## 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(q=;
run;

All Replies
Respected Advisor
Posts: 3,852

## 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

Posted in reply to data_null__

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,852

## 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(q=;
run;
Occasional Contributor
Posts: 10

## Re: Getting percentage for more than one variable within ID

Posted in reply to data_null__

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

Best Regards...

🔒 This topic is solved and locked.

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

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