FREQプロシジャでクロス集計表を作成する場合、すべての度数が0であるカテゴリが表示されない

[OS]ALL
[リリース]
[キーワード] Base SAS,FREQ

[質問]

FREQプロシジャでクロス集計表を作成する場合、すべての度数が0であるカテゴリが表示されません。 どうすれば表示できるでしょうか。

data freqdata;
infile cards;
input var1  var2 ;
cards;
1 1
2 1
2 3
3 3
;
run;

proc freq data=freqdata;
  tables var1*var2/nopercent nocol norow;
run;



   |   1   3              |  1   2   3
---+-----------        ---+---------------
 1 |   1   0            1 |  1   0   0
 2 |   1   1    -->     2 |  1   0   1
 3 |   0   1            3 |  0   0   1
                                ---
                        ここを出力したい



[回答]

欠損セルにダミーデータを結合すれば表示できます。上の例の場合、変数 var2 の 2 のカテゴリがないので、次のようにダミーデータを作成します。

data dummy;
  var1=.;
  var2=2;
run;

次に、ダミーデータをソートして、もとのデータセットfreqdataに連結します。

data freq2;
 merge freqdata dummy;
 by var1 var2;
run;
この連結したデータを使用して、FREQプロシジャを実行します。