今回はFREQプロシージャについて解説します。
/* freq 頻度集計 */
data data1;
番号="AAAAAA"; コード="02"; 金額=1999;
output;
番号="AAAAAA"; コード="05"; 金額=2000;
output;
番号="BBBBBB"; コード="06"; 金額=2400;
output;
番号="BBBBBB"; コード="04"; 金額=1300;
output;
番号="BBBBBB"; コード="05"; 金額=4000;
output;
番号="CCCCCC"; コード="05"; 金額=5555;
output;
run;
proc sort data=data1 out=data2; by 番号; run;
proc freq data=data2; tables 番号; run;



- freqで頻度集計ができる。
- tables 番号により番号について頻度集計を取る。
/* freq クロス集計 */
data data1;
番号="AAAAAA"; コード="02"; 金額=1999;
output;
番号="AAAAAA"; コード="05"; 金額=2000;
output;
番号="BBBBBB"; コード="06"; 金額=2400;
output;
番号="BBBBBB"; コード="04"; 金額=1300;
output;
番号="BBBBBB"; コード="05"; 金額=4000;
output;
番号="CCCCCC"; コード="05"; 金額=5555;
output;
run;
proc sort data=data1 out=data2; by 番号; run;
proc freq data=data2; tables 番号*コード; run;



- freqでクロス集計ができる。
- tables 番号*コードにより番号×コードについてクロス集計を取る。
/* freq table無し */
data data1;
番号="AAAAAA"; コード="02"; 金額=1999;
output;
番号="AAAAAA"; コード="05"; 金額=2000;
output;
番号="BBBBBB"; コード="06"; 金額=2400;
output;
番号="BBBBBB"; コード="04"; 金額=1300;
output;
番号="BBBBBB"; コード="05"; 金額=4000;
output;
番号="CCCCCC"; コード="05"; 金額=5555;
output;
run;
proc sort data=data1 out=data2; by 番号; run;
proc freq data=data2; run;



- freqで頻度集計ができる。
- tables ○○が無いと、全ての変数について頻度集計を取る。
ちなみにfreqプロシージャは結果を表示するため、titleステートメントが使えます。
/* freq title */
data data1;
番号="AAAAAA"; コード="02"; 金額=1999;
output;
番号="AAAAAA"; コード="05"; 金額=2000;
output;
番号="BBBBBB"; コード="06"; 金額=2400;
output;
番号="BBBBBB"; コード="04"; 金額=1300;
output;
番号="BBBBBB"; コード="05"; 金額=4000;
output;
番号="CCCCCC"; コード="05"; 金額=5555;
output;
run;
proc sort data=data1 out=data2; by 番号; run;
title "title statement";
proc freq data=data2; run;



- freqで頻度集計ができる。
- TITLEステートメントにより、「結果」にタイトルを付けられる。