对于SAS EG中的不同名称的SUM

时间:2015-03-25 18:48:40

标签: sas enterprise-guide

我试图找到与每个客户相对应的产品价格总和,但找不到每个客户名称的明显总和:

SUM of total price | Product ID | Order ID| Customer name

$71.97        240400300006  1235822165  Alberta Beasley
$67.50        230100600041  1238001242  Alberta Beasley
$26.90        240700200010  1236974404  Alberta Beasley
$249.60   230100100045  1230873918  Alberta Cacitti
$204.40   220200100044  1242419364  Alberta Cacitti
$143.70   220200100056  1239120771  Alberta Cacitti

我希望我的输出为:

Alberta Beasley  $166.37
Alberta Cacitti  $597.7

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

以下是许多可能方法中的三种。在每个方法中,您告诉SAS您要按列name对数据进行分组,并总结每个组price列中的值。

使用proc summary(或proc means):

proc summary data = have nway;
    class name;
    output out = want
        sum(price) = total;
run;

使用proc sql

proc sql;
    create table want as
    select name, sum(price) as total
    from have
    group by name;
quit;

使用EG&#39的查询构建器(这是来自内存所以名称可能有点偏离):

  • 打开数据集
  • 选择查询生成器
  • nameprice拖到“选择数据”窗格
  • 将摘要列设置为" SUM"对于price
  • 选择编辑组,然后选择名称
  • 按“运行”