I have a data set with a list of ID numbers and type of involvement. The types are either "event attendance" or "leadership". I need to create a count for each ID that weights each 'event attendance' as .5 and each "leadership" as 2. How do I do this?
Code a new variable and sum that.
data want ;
set have;
if involvement='event attendence' then wt=.5;
else if involvement='leadership' then wt=2;
run;
continuing from last post:
Proc freq data=want;
table involvement;
weight wt;
run;
and the sql alternative
proc sql ;
create table summary as select id, sum(
case
when involvement='event attendence' then .5
when involvement='leadership' then .2
else 0
end ) as weighted_count
from your_data
group by ID
;
quit ;
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.