FREQ SAS

【SAS】FREQプロシージャは頻度集計とクロス集計をする

投稿日:2021年11月28日 更新日:

今回は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ステートメントにより、「結果」にタイトルを付けられる。

-FREQ, SAS

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

【SAS】足し算。その1(+演算子を用いた計算)

今回は+演算子を用いた足し算について解説します。  /* + */ data data1; Id1=1111; Id2=1111; Id3=1111; output; Id1=2222; I …

【SAS】PUTC関数は文字列に対して出力形式を指定して変換する。

今回はPUTC関数について解説します。 /* putc_1 */ proc format; value point “aaaa”=’Low’ “bbbb”=’High’; run; data data …

【SAS】FORMATステートメントは文字列の出力形式を変換する。

今回はFORMATステートメントについて解説します。 /* format */ data data1; Id1=111111; output; run; data data2; set data1; …

【SAS】SASで良く使うテクニック。その9 「Alt+E+S+V+E」~縦横の並び替えを行いたいとき~【Excel】

今回はSASで良く使うテクニックということで、縦横の並び替えを行いたい時は、「Alt+E+S+V+E」が役に立つ理由を解説していきます。 具体的な使用場面は、 データセットの場合、カラムは横並びですが …

【SAS】DATETIME関数はSAS日時値を取得する。

今回はDATETIME関数について解説します。 /* datetime_1 */ data data1; aaaa = datetime(); run; datetime()はSAS時間値を取得する。 …