使用统计“乘法”的proc摘要

时间:2016-12-01 08:55:26

标签: sas summary

是否可以使用proc摘要创建一个新的统计信息,将每列中的每个值相乘,例如,而不仅仅是平均值? SAS非常僵硬,让我发疯。

data test;                                                
    input b c ;                                 
    datalines;                                                
    50 11                                       
    35 12                                        
    75 13                                       
    ;  

所需输出为50 * 35 * 75,11 * 12 * 13和_FREQ(在proc摘要中为正常输出)

1 个答案:

答案 0 :(得分:1)

这是一个不常见的聚合,所以你基本上需要自己动手。由于数据步骤循环,因此可以使用RETAIN轻松完成,以保持行与行之间的值并在最后一条记录中输出结果。

 Data want;
   Set have end=eof;
   Retain prod_b prod_c;
   prod_b = prod_b * b;
   prod_c = prod_c * c;
   Freq= _n_;
 If eof then OUTPUT; 
  Keep prod: freq;
 Run;