univariateプロシジャのヒストグラムに要約統計量のテーブルを突っ込む話

univariateプロシジャは多機能の極みなので、できることを1つずつ紹介してたら、本できちゃいそうなので、結構基本的で結構使えるのに知らない人が多いと、僕が勝手に思ったものを適当に紹介します。

データはなんでもいいです。

data Q1;
call streaminit(1234);
do i=1 to 100;
 X=rand('uniform')*10;output;
end;
drop i;
run;




ods graphics on;
proc univariate data=Q1 noprint;
 histogram X;
run;

とすれば





















こんな感じのヒストグラムができると思います。
histogramには、盛りだくさんのオプションが用意されていて、見栄えや幅や密度曲線はめたり、もうやりたい放題なので、詳しくはヘルプを見て下さい。

で、今回紹介したいのは上のグラフに、要約統計量の情報を突っ込むinsetです。

なにも難しいことはなくて、以下で終わりです。

proc univariate data=Q1 noprint;
 histogram X;
 inset n="N" (8.0)
 mean="平均" (8.2)
 std="標準偏差" (8.3)
 / header='要約統計量' pos=NE;
run;





















なんか右上にでてる!って感じでOKです。

inset 以下、出力したいキーワード='ラベル名'(フォーマット指定)で基本OKです。

スラッシュ以下にレイアウト絡みのオプションが、これまたいっぱいあります。
header=はそのテーブルのヘッダー、
そしてpos=はposition、つまり表示場所なのですが、これが凄い独特で、何故か
方位磁石方式なんですね。

つまり、いまpos=NEとしている NEとはNorthEast、つまり北東、すなわち右上に表示しろいう命令なんです。
なのでpos=SWとすれば、南西、つまり左下に表示されます。

なんじゃそりゃ。


0 件のコメント:

コメントを投稿