删除时间序列SAS的日期变量的日期部分

时间:2014-07-22 13:36:04

标签: date format sas forecasting

我对SAS的约会感到沮丧。 我正在使用proc预测,我正在尝试让我的日期均匀分布。我用proc sql进行了一些预处理以按月计算我的计数,但我的日期不正确。

虽然我的数据集看起来不错(b / c我使用格式MONYY。),该变量的实际值是错误的。

date   year month count
Jan10  2010 1     100
Feb10  2010 2     494
...
..
.

日期值实际上是日期的完整SAS表示(18267),表示它包含日期计数。

我是否需要将变量转换为字符串并返回日期,或者是否可以运行快速过程?

我的目标是将日期变量与proc预测一起使用,所以我只想要月和年。

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

您无法在SAS中定义日期变量(因此从1jan1960开始的天数),不包括日期。 你可以做的是用monyy这样的格式来隐藏这一天。但基础数字将始终包含该信息。

也许你可以在proc预测中使用interval=month选项?

请添加一些有关您在预测程序中遇到的问题的详细信息。


编辑:检查this示例:

data past;
   keep date sales;
   format date monyy5.;
   lu = 0;
   n = 25;
   do i = -10 to n;
      u = .7 * lu + .2 * rannor(1234);
      lu = u;
      sales = 10 + .10 * i + u;
      date = intnx( 'month', '1jul1991'd, i - n );
      if i > 0 then output;
   end;
run;
proc forecast data=past interval=month lead=10 out=pred;
   var sales;
   id date;
run;