id date
1 01/01/2005
2 01/02/2006
3 01/01/2007
I want to delete any observation after 10/01/2006
output
id date
1 01/01/2005
2 01/02/2006
data want;
set have;
if date gt '01Oct2006'd then delete;
run;
data want;
set have;
if date gt '01Oct2006'd then delete;
run;
Hello,
There are a few different options:
Using Delete
data output;
set input;
if date>'10Jan2006'd then delete;
run;
Using IF
data output;
set input;
if date<='10Jan2006'd then output; ** (Then output) is optional;
run;
Using Where
data output;
set input;
where date<='10Jan2006'd;
run;
Using Where Not
data output;
set input;
where not (date<='10Jan2006'd);
run;
Using SQL Delete
proc sql;
delete from dataset
where date>'10Jan2006'd
;
quit;
Thank you!
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.