如何计算回归系数并将其放入表格的每一行

时间:2015-05-05 15:33:18

标签: sas

我有一个SQL,可以为每个客户创建他的历史的简短摘录。假设我感兴趣的列是TIMESTAMPPURCHASE VALUE。我想为每个客户计算线性回归并将此值放入表格中。

proc sql;
   create table CUSTOMERHISTORY as
   select 
       TIME_STAMP
      ,PURCHASE_VALUE
      ,CUSTOMER_ID
   from <my data source>
;quit;

桌子很大;如果表在计算之前不必加载到RAM中,那将是最好的。

我试过

proc reg
   data = CUSTOMERHISTORY;
   model PURCHASE_VALUE=TIME_STAMP;
   outest = OUTTABLE;
   by CUSTOMER_ID;

但它从未向OUTTABLE写过任何内容。 (我在http://support.sas.com/documentation/cdl/en/statug/63033/HTML/default/viewer.htm#statug_reg_sect007.htm

中找到了参数outest

1 个答案:

答案 0 :(得分:2)

根据您链接到的文档,outtest是一个参数,您应该将其作为proc reg的选项提供。因此,要获得特定输出,您的代码应如下所示:

proc reg
   data = CUSTOMERHISTORY
   outest = OUTTABLE;
   model PURCHASE_VALUE=TIME_STAMP;
   by CUSTOMER_ID;
run;

请注意,data = ...outtest = ...之间没有分号。