I have one of the data field SENT_DATE=' Wednesday, September 06, 2017 10:14 PM' and '2017-07-14 13:01:00.0'. I am using
sent_date1=input(sent_date, e8601dt19.) and format sent_date1 datetime19.all the '2017-07-14 13:01:00.0' to be SAS datetime format. However it can't change the ' Wednesday, September 06, 2017 10:14 PM'. I tried different ways, it failed. How to deal with it?
Try this:
data test;
do txt =
"Wednesday, September 06, 2017 10:14 PM",
"2017-07-14 13:01:00.0";
if anydigit(first(txt)) then
date = input(txt, e8601dt19.);
else date = input(prxchange("s/\s*\w+,\s*//o",1,txt), anydtdtm40.);
output;
end;
format date datetime19.;
run;
proc print; run;
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!
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.