自定义过程报告

Customizing proc report

我需要生成一些报告,并且我总是在报告过程中苦苦挣扎以获得所需的结果,同时又不会对初始数据集造成过多的干扰,这会花费很多时间。

数据集的形式如下:

ID  VAR1 VAR2 VAR3 
 1   1    2    3 
 1   4    5    6
 2   7    8    9
 2   10  11   12

输出应该是:

ID    VAR1
       VAR2
        VAR3

1     1
       2
        3

      4
       5
        6

2     7 
       8
        9

     10
      11
       12

是否有使用 proc 报告生成输出的好方法(即高效)?因为我看到的唯一方法是在 ID 变量中手动创建空白字符并手动创建包含变量的列并大量使用 put 函数来创建空格。 proc 报告的唯一用途是通过使用排序变量在主题之间创建空白。它花费的时间是疯狂的。我试图找到一些很好的资源,但没有成功。

如有任何建议,我将不胜感激。谢谢

听起来您只想使用数据步骤来生成您的“报告”。

这是一个大纲:

data _null_;
  set have;
  by id;
  array cols var1-var3;
  if first.id then put @1 id @;
  do index=1 to dim(cols);
    put @5+index cols[index] ;
  end;
  put;
run;

结果:

1    1
      2
       3

     4
      5
       6

2    7
      8
       9

     10
      11
       12

添加 FILE 语句以将输出定向到其他地方。例如,使用 FILE PRINT; 将报告发送到列表输出而不是 LOG。