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 .
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 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.