I am sure this is easy, but I have been trying to figure it out and can't. I have a list of IDs, where some of them are duplicates. What I want is to number all of the ids so that they have a number next to them identifying which observation is which based on some sort criteria.
Data:
ID Numeric_Var
1 5
2 28
2 42
3 2
3 9
3 74
And I want a new variable so that my data looks like this:
ID Numeric_Var Count
1 5 1
2 28 1
2 42 2
3 2 1
3 9 2
3 74 3
Any help would be great.
Thanks
If you don't mind sorting the data (assuming it is not currently in order of the ID variable);
proc sort data=have; by id; run;
data want;
set have;
by id;
retain count; /* I would probably use something more like sequencenumber ...*/
if first.id then count=1;
else count+1;
run;
If you don't mind sorting the data (assuming it is not currently in order of the ID variable);
proc sort data=have; by id; run;
data want;
set have;
by id;
retain count; /* I would probably use something more like sequencenumber ...*/
if first.id then count=1;
else count+1;
run;
Perfect great thanks!
Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.
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.
Ready to level-up your skills? Choose your own adventure.