PROC REPORT RBREAK行可以包含多个分组级别吗?

问题描述 投票:1回答:1

我有一些PROC REPORT代码可以生成具有2个分组级别的报告,但是RBREAK始终只是对所有内容进行汇总。例如,我得到这样的内容:

第1行:100200300之前的A型第2行:400500600之后第3行:100200300之前的B型第4行:400500600之后第5行:总计700800900

是否有任何方法可以使PROC REPORT完整地归纳为第二级分组?我有140,000多个观察值,现在我正在复制每个观察值,并将第一级分组变量设置为一个常数,以得到包含第二级分组的制造总行:

第1行:100200300之前的A型第2行:400500600之后第3行:100200300之前的B型第4行:400500600之后Row5:总计700800900之前第6行:701 801 901之后

或者即使PROC REPORT无法自动执行任何操作,是否有更好的方法可以将总数求底?我希望我可以使用多标签格式...但是据我所知,它们在PROC REPORT中不起作用。

sas
1个回答
0
投票

[proc tabulate确实很容易做到:

/* test data */
data one;
  do type = "A", "B";
    do time = "Before", "After";
       drop AfterPremium;
       AfterPremium = 300 * (time="After");
       v1 = 100 + AfterPremium;
       v2 = 200 + AfterPremium;
       v3 = 300 + AfterPremium;
       output;
    end;
  end;
run;

proc tabulate data=one order=data formchar="|-+++++++++";
  class type time;
  var v1-v3;
  tables (type all="All Types")*time, (v1 v2 v3)*sum;
run;
/* on log
+----------------------+------------+------------+------------+
|                      |     v1     |     v2     |     v3     |
|                      +------------+------------+------------+
|                      |    Sum     |    Sum     |    Sum     |
+----------+-----------+------------+------------+------------+
|type      |time       |            |            |            |
+----------+-----------+            |            |            |
|A         |Before     |      100.00|      200.00|      300.00|
|          +-----------+------------+------------+------------+
|          |After      |      400.00|      500.00|      600.00|
+----------+-----------+------------+------------+------------+
|B         |Before     |      100.00|      200.00|      300.00|
|          +-----------+------------+------------+------------+
|          |After      |      400.00|      500.00|      600.00|
+----------+-----------+------------+------------+------------+
|All Types |Before     |      200.00|      400.00|      600.00|
|          +-----------+------------+------------+------------+
|          |After      |      800.00|     1000.00|     1200.00|
+----------+-----------+------------+------------+------------+
*/
© www.soinside.com 2019 - 2024. All rights reserved.