Hello all,
I am trying to convert a character date but what I am doing doesn't seem to work. I am attaching the file where date is of the form "1993-4" and the format is $6.
I am using this code to convert it to yyq6. but it doesn't work:
data want;
set example;
qtr=input(date,yyq6.);
format qtr yyq6.;
run;
Any suggestions?
data want;
input date $6. ;
qtr=input(translate(date,'Q','-'),yyq6.);
format qtr yyq6.;
put (_all_) (=);
cards;
1993-4
run;
date=1993-4 qtr=1993Q4
data want;
input date $6. ;
qtr=input(translate(date,'Q','-'),yyq6.);
format qtr yyq6.;
put (_all_) (=);
cards;
1993-4
run;
date=1993-4 qtr=1993Q4
OR this...
data want;
set example;
date1=tranwrd(date, "-", "q");
qtr = input(date1,yyq6.);
format qtr yyq6.;
run;
Please try the below code,
data have;
input date $6.;
new=input((tranwrd(date,'-','q')),yyq6.);
format new yyq6.;
cards;
1993-4
;
proc print;
run;
Thanks,
Jagadish
Many thanks to everybody!
All solutions work!
Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9.
Early bird rate extended! Save $200 when you sign up by March 31.
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.