Hello,
Please, I need help excluding observations from a variable that are out of order. For each ID, the order should be 010101 or 101010. If the order is 001101, we exclude the repeated value, so it becomes 0101. The following is my sample data.
Thank you!
data WORK.CLASS(label='Student Data');
input ID$3. Wgtloss;
datalines;
222 0
222 1
222 1
222 0
222 0
222 0
223 1
223 1
223 1
223 0
223 0
223 1
224 1
224 1
224 0
224 1
224 0
224 0
;run;
Seems like a simple application of BY group processing. Use the NOTSORTED keyword on the BY statement to form the groups.
data have;
input ID :$3. Wgtloss;
datalines;
222 0
222 1
222 1
222 0
222 0
222 0
223 1
223 1
223 1
223 0
223 0
223 1
224 1
224 1
224 0
224 1
224 0
224 0
;
data want;
set have;
by id wgtloss notsorted ;
if first.wgtloss;
run;
Results
Obs ID Wgtloss 1 222 0 2 222 1 3 222 0 4 223 1 5 223 0 6 223 1 7 224 1 8 224 0 9 224 1 10 224 0
Seems like a simple application of BY group processing. Use the NOTSORTED keyword on the BY statement to form the groups.
data have;
input ID :$3. Wgtloss;
datalines;
222 0
222 1
222 1
222 0
222 0
222 0
223 1
223 1
223 1
223 0
223 0
223 1
224 1
224 1
224 0
224 1
224 0
224 0
;
data want;
set have;
by id wgtloss notsorted ;
if first.wgtloss;
run;
Results
Obs ID Wgtloss 1 222 0 2 222 1 3 222 0 4 223 1 5 223 0 6 223 1 7 224 1 8 224 0 9 224 1 10 224 0
Thank you so much for your assistance!
Please, I have a follow up question. What if I want only the order where the number 1 comes first i.e. 101010?
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.
Find more tutorials on the SAS Users YouTube channel.