Hello,
I have all my info about dates in SAS format and I want from each date subtract nine months.
Is it possible to do?
intnx()
Linus' reply is a bit terse. The intnx function will provide an answer, provided you supply the right question. Do you want 9 calendar months exactly (ie to the same day - if possible - 9 months previously), or do you just need the month and the first day will do; or maybe push all dates back by the same amount (0.75 year = 274 days)?
Taking these options in reverse order:
Prev_date = date - 274 ;
Prev_date = intnx("MONTH", date, -9) ;
Prev_date = intnx("MONTH", date, -9, "SAME") ;
INTNX is documented here
SAS(R) 9.2 Language Reference: Dictionary, Fourth Edition
BTW, if your dates are datetime intervals you need to use "DTMONTH" instead of "MONTH" ; and for the 274 day calculations use
Prev_date = intnx("DTDAY", date, -274, "SAME") ;
Richard
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.
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.