如何创建连续日期列?

时间:2013-06-24 18:49:49

标签: sas

如何在每个观察的每个月的第一天在SAS中创建这样的日期列?

01/01/2007

02/01/2007

...

2012年10月1日

2012年11月1日

我应该使用某种do-loop吗?谢谢!

1 个答案:

答案 0 :(得分:5)

是的,循环很简单。以下是许多可能的解决方案之一:

data want;
   format first_of_month yymmdd10.;
   first_of_month = mdy(1,1,2007);
   do until (first_of_month > mdy(11,1,2012));
      output;
      first_of_month = intnx('month',first_of_month,1);
      end;
run;

这会生成您询问的数据范围(从2007年1月1日到2012年11月1日的一系列“月初”日期。