DATA Step, Macro, Functions and more

How to change text datetime variable to be SAS datetime format

Reply
New User
Posts: 1

How to change text datetime variable to be SAS datetime format

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?

Super User
Posts: 23,244

Re: How to change text datetime variable to be SAS datetime format

Did you try anydtdtm. informat for the WordDate, or a worddate informat, if it exists?
Esteemed Advisor
Posts: 5,475

Re: How to change text datetime variable to be SAS datetime format

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;
PG
Ask a Question
Discussion stats
  • 2 replies
  • 76 views
  • 0 likes
  • 3 in conversation