我有一个文本文件,其中包含我想要转换为SAS日期的日期。日期看起来像这样
2014-12-14T07:04:33Z
2014-12-14T07:04:33Z
2014-12-14T07:04:33Z
2014-12-14T07:04:33Z
2014-12-14T07:04:33Z
我知道如果日期看起来像date_in_string =' 05May2013',那么我可以
input(date_in_string,date9.);
但是,我在字符串中有字符,而且我找不到任何合适的格式。
答案 0 :(得分:6)
IS8601DZ.
是该日期时间的正确信息,因为它是带有时区的ISO 8601日期时间格式。
data test;
input dt IS8601DZ.;
format dt datetime17.;
datalines;
2014-12-14T07:04:33Z
2014-12-14T07:04:33Z
2014-12-14T07:04:33Z
2014-12-14T07:04:33Z
2014-12-14T07:04:33Z
;;;;
run;
要转换为仅限日期,您可以在其中阅读然后使用DATEPART,或者您可以使用YYMMDD10。读取它(记住,SAS会很乐意为你截断它并忽略最后的垃圾 - 只要你的MM / DD是零填充)。如果它们不是零填充,则必须以其他方式解析它。
data test;
input dt YYMMDD10.;
format dt date9.;
datalines;
2014-12-14T07:04:33Z
2014-12-14T07:04:33Z
2014-12-14T07:04:33Z
2014-12-14T07:04:33Z
2014-12-14T07:04:33Z
;;;;
run;