sas 如何将字符型日期变成可计算的格式

需求求字符型格式的日期相差6个月的日期

DATA A;
X='20151207';
Y=INPUT(X,YYMMDD8.);
Z=PUT(INTNX('MONTH',Y,6,'s'),YYMMDDN8.);
PUT X= Y=  Z=;
RUN;

结果:X=20151207 Y=20429 Z=20160607

 

但是如果X='201506'该怎么处理呢?同样使用input会报错

我的做法是:

DATA A;
X='20151231';
X1=INPUT(X,YYMMDD8.);
Y='201507';
YY=CATS(Y,'01');
Y1=INPUT(YY,YYMMDD8.);
Z=INTCK('MONTH',Y1,X1);
PUT X= Y= Z=;
RUN;

输出:X=20151231 Y=201507 Z=5

 

posted @ 2017-09-05 14:14  Anni爱摩天轮  阅读(1511)  评论(0编辑  收藏  举报