DATA Step, Macro, Functions and more

proc sql avg multiple variables

Reply
Regular Contributor
Posts: 196

proc sql avg multiple variables

I have 10 questions from a survey. Each question has possible values 1-5.

I would like to create the following subscale averages:

questions 1, 2

questions 3, 4, 5

questions 6, 7, 8, 9

questions 10

So, this means there would be a total of 4 means (mean1, mean2, mean3, mean4).

Does anyone know how to do this with proc sql?

Thank you.

Trusted Advisor
Posts: 1,300

proc sql avg multiple variables

data foo;

call streaminit(12345);

array q[10];

do id=1 to 100;

  do i=1 to 10;

   q=abs(mod(int(rand('CAUCHY')*10),10));

  end;

  output;

end;

drop i;

run;

proc sql;

select avg(q1+q2)/2 as avg1, avg(q3+q4+q5)/3 as avg2, avg(q6+q7+q8+q9)/4 as avg3, avg(q10) as avg4  from foo;

quit;

Super User
Posts: 9,671

proc sql avg multiple variables

What does your data look like? and what output do you want?

Ksharp

Ask a Question
Discussion stats
  • 2 replies
  • 136 views
  • 3 likes
  • 3 in conversation