从数据集usig SAS创建时间序列

时间:2016-09-02 15:37:33

标签: sas

我有一个像pic

这样的大数据集

我想为每个 cont_no 创建一个时间序列。这意味着我想要像

这样的东西

enter image description here

我试过

Proc timeseries data=contracts
out=timeseries;
by cont_no;
id date interval=MS_ID accumulate=total;
var exp_amount;
run

它运行了几个小时而没有结果。 我该如何更正代码?或者我可能没有使用SAS的正确命令和“工具”!

1 个答案:

答案 0 :(得分:1)

您没有创建时间序列 - 您已经拥有时间序列。你想要转置时间序列(虽然我不知道你是否真的想这样做,但无论如何)。

如果您首先创建一个变量year_month,并将年份/月合并在一起,并以A-Z字符或下划线开头,然后按cont_no排序,那么这将有效:

proc transpose data=contracts out=timeseries;
  by cont_no;
  var exp_amount;
  id year_month;
run;

但是我鼓励你对当前结构化的数据进行时间序列分析 - 对于时间序列分析而言,这比水平结构更有用。