Hello,
I have a numeric variabled called "Period_YYYYMM", which contains values such as "201402". I need to convert it into a character variable which should display the values as for instance "28FEB2014". I imagine this requires a combination of the informat yymmn6., the format date9, the intnx-function (to find the last day per month), and a few put- and input- functions; however I seem unable to figure out the correct application of those. Can someone please offer some guidance on this?
Thanks for your time
Do you need it to be character or just display date9.?
data want;
var1=201402;
var2=intnx('month',input(put(var1,$6.),yymmn6.),0,'end');
format var2 date9.;
run;
to be truly character:
data want;
var1=201402;
var2=put(intnx('month',input(put(var1,$6.),yymmn6.),0,'end'),date9.);
run;
It always help if you've posted what you tried
Do you need it to be character or just display date9.?
data want;
var1=201402;
var2=intnx('month',input(put(var1,$6.),yymmn6.),0,'end');
format var2 date9.;
run;
to be truly character:
data want;
var1=201402;
var2=put(intnx('month',input(put(var1,$6.),yymmn6.),0,'end'),date9.);
run;
Worked like a charm. Thanks grand wizard.
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Need to connect to databases in SAS Viya? SAS’ David Ghan shows you two methods – via SAS/ACCESS LIBNAME and SAS Data Connector SASLIBS – in this video.
Find more tutorials on the SAS Users YouTube channel.