trying to convert sdtm date into is8601dt format in adam,not working,what I am missing?
TR02SDTM=input(EXSTDTC,is8601dt.);
Post the log, please. An some example data (see my footnotes for this).
data exb1_;
24
25 set exb;
26 by usubjid;
27 if first.usubjid then do;
28 TR02SDT=input(EXSTDTC,e8601da.);
29
30 TR02SDTM=input(EXSTDTC,e8601dt.);
31 end;
32 if last.usubjid then do;
33 tr02edt=input(exendtc,e8601da.);
34 end;
35 format tr02sdtm e8601dt.;
36 format TR02SDT tr02edt e8601da.;
37 run;
NOTE: Invalid argument to function INPUT at line 30 column 13.
I dont think there is an is8601dt informat to convert to a date numeric variable before you apply is8601dt format
You prolly need E8601DTw.d informat . Correct me if i am wrong
I'm a little confused by your log and the format of the original values. Doesn't something like this work?
data d;
exstdtc = "2003-03-26T09:00";
tr02sdtm = input (exstdtc,is8601dt.);
format tr02sdtm is8601dt.;
run;
unexpected leading or trailing blanks maybe causing the missing values. use COMPRESS() and check.
data test;
var1=' 2003-03-26T09:00';
var2='2003-03-26T09:00';
need1=input(var1,is8601dt.);
need2=input(var2,is8601dt.);
run;
Thanks everyone.Problem was with blank space.
used tr02sdtm=input(strip(exstdtc),e8601dt.); and it worked
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and save with the early bird rate—just $795!
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.