Hi everyone,
If i have a data which is the following
data t;INPUT x;
cards;1212312;
This data set is merged from each person.
So, its id should be 1 1 2 2 2 3 3.
How could I get the the id I want? I have tried use the if first statement, but I failed.
Please tell me the easiest way to do it.
This would be one way:
data want;
set have;
priorx = lag(x);
if _n_=1 or x <= priorx then id + 1;
drop priorx;
run;
This assumes that when X stays the same from one observation to the next, that the ID should be different.
Good luck.
View solution in original post
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.
Register now!
Need to connect to databases in SAS Viya? SAS’ David Ghan shows you two methods – via SAS/ACCESS LIBNAME and SAS Data Connector SASLIBS – in this video.
Find more tutorials on the SAS Users YouTube channel.