0

いくつかのレポートを作成する必要があり、最初のデータセットをいじらずに必要な結果を得るためのレポート手順に常に苦労しています。これには多くの時間がかかります。

データセットの形式は次のとおりです。

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 レポートを使用する唯一の目的は、並べ替え変数を使用して被験者間に空白を作成することです。かかる時間はめちゃくちゃです。私はそれに関するいくつかの良いリソースを見つけようとしましたが、成功しませんでした.

提案をいただければ幸いです。ありがとう。

4

1 に答える 1

1

データステップを使用して「レポート」を作成したいだけのようです。

概要は次のとおりです。

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 ではなくリスト出力に送信するために使用します。

于 2021-08-15T15:18:47.470 に答える