我正在尝试使用worddatx32阅读2011年3月20日的日期。格式,但它无法读取它给出错误未找到或无法加载。
我也尝试anydtdte32。但它给了。在输出中
如何在数据行中阅读2011年3月20日的日期
data sample;
infile datalines truncover dsd;
input JDate : worddatx32.;
format JDate date9.;
datalines;
20 march 2011
;
run;
答案 0 :(得分:0)
WORDDATX.
是格式,您需要一个INFORMAT。尝试使用ANYDTDTE.
作为信息。
data test ;
input xx anydtdte32. ;
format xx date9.;
put xx= @15 _infile_;
cards;
20 march 2016
20MAR2016
;
此外,如果您要使用:
修饰符,则SAS将停留在该空格处,仅读取20
。添加&
修饰符,它会在看到两个或多个空格时停止。如果您使用分隔输入,那么只需使用INFORMAT语句。
data test ;
infile cards dsd truncover ;
input xx ;
informat xx anydtdte. ;
format xx date9.;
put xx= @15 _infile_;
cards;
20 march 2016
20MAR2016
;
注意:ANYDTDTE。在SAS版本9.4之前,informat不支持此格式
如果您无法使用该信息,请将该值读取为三个字段并自行转换。
input d $ m $ y $ ;
date = input(cats(d,substr(m,1,3),y),date9.);
答案 1 :(得分:0)