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 ;
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.