Hi,
i have the date in 20070102 numeric format, i want this into SAS format so that i get the month out of this date. I am happy to
know if there is another way as well without first formatting into SAS.
Thanks.
If you have the number 20,070,102 and you want to treat the digits from the hundreds and thousands place as a month then just use some arithmetic to get the value.
data x;
input number comma10.;
month = mod(int(number/100),100);
put (number month) (=);
cards;
20,070,102
20131201
;
I guess you want first to change the numeric to SAS date and then get the MONTH from the SAS date. Here is one way.
data _null_;
dt = 20070102;
date = input(put(dt,8.),yymmdd10.);
month = month(date);
put date = month =;
run;
If you have the number 20,070,102 and you want to treat the digits from the hundreds and thousands place as a month then just use some arithmetic to get the value.
data x;
input number comma10.;
month = mod(int(number/100),100);
put (number month) (=);
cards;
20,070,102
20131201
;
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.