- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Hi Everyone,
i am trying to use a variable from a data sent in an INTNX statement to create a new variable in the same dataset. I would like to use the variable 'XXX' to replace the '-12' in the intnx statement below. XXX is a numeric and represents a number of months, i.e 12 months, 18 months, 255 months, etc. My goal is to create a new date variable, which = 'date' - XXX months.
As ever, thanks in advnce to all,
best regards,
paul
proc sql;
create table test2 as
select extdate,
Date,
intnx('Month',date,-12,'s') format=date9. as new_var
from test;
quit;
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
It depends on whether XXX takes on only positive values, and whether you want to move back or move forward. At any rate, this should probably be the replacement for DATE:
-1*xxx
But if that moves you in the wrong direction, use xxx instead.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Hi Astounding, thanks for getting backto me.
I dont think I have explained myself well...
'Date' is the date i wish to count back in time from.
'XXX' is a variable - the number of months i want to count back from 'Date'
How do i get the variable 'XXX' to replace the '-12' in this - intnx('Month',date,-12,'s') format=date9. as test
does that make sense?
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
You did fine. That was my mistake. Replace -12 with:
-1 * xxx
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
thanks Astounding, i appreciate your help.