Hi,
I want to look at the date value below
Please let me know how to change the date format as it has char type
source
19700101 01:00:00
Target
1970-01-01 01:00:00
At least in SAS 9.2, the anydtdtm format coughed up with that string, so I resorted to:
data test;
char_var = '19700101 01:00:00';
date_var = dhms(
input(substr(char_var,1,8),yymmdd8.),
input(substr(char_var,10,2),2.),
input(substr(char_var,13,2),2.),
input(substr(char_var,16,2),2.)
);
format date_var e8601dt19.;
run;
The ISO 8601 format looks almost like that what the OP wanted.
You would typically use input but I'm not sure your date is in a format SAS will recognize.
Date_var = input(char_var, anydtdtm.);
fomat date_var datetime21.;
If that doesn't work you'll have to separately input each portion, date and time, and then stitch them together again.
At least in SAS 9.2, the anydtdtm format coughed up with that string, so I resorted to:
data test;
char_var = '19700101 01:00:00';
date_var = dhms(
input(substr(char_var,1,8),yymmdd8.),
input(substr(char_var,10,2),2.),
input(substr(char_var,13,2),2.),
input(substr(char_var,16,2),2.)
);
format date_var e8601dt19.;
run;
The ISO 8601 format looks almost like that what the OP wanted.
Thank u so much. its really helpful
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
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.
Ready to level-up your skills? Choose your own adventure.