For the following variable 'a', I need to use two informats to get the output I need. Is there any other format that can both OBS.
output needed;
b
01SEP17:15:10:00
04SEP17:00:00:00
Thank you.
data one;
input a $16.;
datalines;
2017-09-01T15:10
2017-09-04
;
data two;
set one;
b=input(a, anydtdtm.);
c=input(a,?? is8601dt.);
format b c datetime16.;
run;
data one;
input a $16.;
datalines;
2017-09-01T15:10
2017-09-04
;
run;
data two;
set one;
b=ifn(lengthn(a)=10,input(catx('T',a,"00:00"),e8601dt.),input(a,e8601dt.));
format b datetime.;
run;
Its more or less the same thing however.
Catch up on SAS Innovate 2026
Nearly 200 sessions are now available on demand with the SAS Innovate Digital Pass.