Hi all,
I have a data set like this one:
var1 var 2 number
aa x 1
aa y 1
aa z 1
bb t 2
bb y 2
cc 3
cc 3
cc 3
so, the column number is the column that I want to obtain. As you can see, it assigns a number for each of distinct values of var1.
could you please help me????
thanks a lot
Hi.
How about this?
data in;
input var1 $ var2 $;
cards;
aa x
aa y
aa z
bb t
bb y
cc .
cc .
cc .
;
proc sort data = in;by var1;
data temp;
set in;
by var1;
retain number 0;
if first.var1 then number++ 1;retain number;
run;
I hope it helps!
Good luck.
Anca.
Hi.
How about this?
data in;
input var1 $ var2 $;
cards;
aa x
aa y
aa z
bb t
bb y
cc .
cc .
cc .
;
proc sort data = in;by var1;
data temp;
set in;
by var1;
retain number 0;
if first.var1 then number++ 1;retain number;
run;
I hope it helps!
Good luck.
Anca.
Thanks a lot, Anca. Thats perfect. I was not familiar with retain .
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.