プログラミングと機械学習のメモ
日付: カテゴリ: SAS
前回の続きです。今回はヒストグラム、箱ひげ図を描いてみようと思います。
今回もIrisデータセットを使用します。以下のコードを実行してください。
data iris;
set sashelp.iris;
run;
ods graphics on;
ods graphics /width=16cm height=12cm;
ヒストグラムを作成する方法はいくつかあります。1つ目は、univarateプロシジャを使用する方法です。「_numeric_」を使用することで全ての数値変数のヒストグラムを描くことができます。さらに、「insetステートメント」を使用することで、統計量も表示してくれます。
proc univariate noprint data=iris;
histogram _numeric_;
inset n="N" (8.0)
mean="平均" (8.2)
std="標準偏差" (8.2)
/ header='要約統計量' pos=NE;
run;
2つ目はsgplotプロシジャを使用する方法です。ビン数を指定したり、カテゴリごとに色分けされたヒストグラムを描いたりすることが可能になります。
title "SpeciesごとのSepalLengthのヒストグラム";
proc sgplot data=iris;
histogram SepalLength /group=Species nbins=20;
run;
箱ひげ図も方法がいくつかあります。まずはunivariateプロシジャを使う方法から。
title "Speciesごとの箱ひげ図";
proc univariate data=iris plot;
var _numeric_;
by Species;
run;
数値変数すべての箱ひげ図を出してくれますが、箱ひげ図以外にもたくさん出力されちゃいます。
次はsgplotプロシジャを使う方法です。
title "SpeciesごとのSepalLengthの箱ひげ図";
proc sgplot data=iris;
vbox SepalLength /group=Species;
run;
変数を指定する必要がありますが、綺麗に描くことができます。
ヒストグラムと箱ひげ図を同時に見たいときはttestプロシジャを使いましょう。
title "ヒストグラムと箱ひげ図";
proc ttest data=iris plots(only)=summary;
run;