I have date in DDMMYYYY (29mar2018) format and i want to convert it to MMM-YYYY (Mar-2018)
data Example;
length OutDate $8;
InDate = "29mar2018";
SASDateValue = input(InDate, date9.);
format SASDateValue date9.;
OutDate = put(SASDateValue, monname3.)||"-"||put(SASDateValue, year4.);
run;
SAS allows for the creation of your own date formats using the picture statement in proc format:
proc format library=work; picture mymonyy (default=8) low-high ='%b-%Y' (datatype=date); run;
If the value is an actual SAS date valued numeric then use the mymonyy. format for any procedure to display the value.
Note that in the code aboe the %b and %Y are case sensitive. Capitalization of the month will depend on your Local setting any you may want to try %3B if %b doesn't look the way you want.
Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!
Check out this tutorial series to learn how to build your own steps in SAS Studio.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.