2016年7月27日水曜日

SAS9.3からsasemfでの出力が出来ない話

SAS9.3から、デフォルトのグラフの結果出力先がHTML形式になっています。
HTML形式の出力ですと、sasemfに対応していないため、
オプションを指定するとログにwarningが出ます。

これを回避するには
1、グラフをpngにする
2、9.2以前の様に出力先をLISTING形式にする
のどちらかになるかと思います。

2の出力先をLISTING形式にするには
ods _ALL_ CLOSE;
ods LISTING;
としてLISTING出力を有効にしてあげてください

どうもdeviceに限らず、goptionsステートメントの内容を有効にするには
LISTING出力である必要があるそうです。

2016年7月26日火曜日

freqはbyステートメントを空白指定しても通る話

freqプロシジャってbyステートメントを空白にしても通るんですね
byステートメントを書いたら、何かは指定しないとエラー出ると思ってました

データはSASのガイドから拝借しました

/*testデータ*/
data hoge;
    input Region Eyes $ Hair $ Count @@;
    label Eyes  ='Eye Color'
             Hair  ='Hair Color'
             Region='Geographic Region';
datalines;
1 blue    fair         23  1 blue  red     7  1 blue  medium 24
1 blue    dark       11  1 green fair   19  1 green red     7
1 green  medium 18  1 green dark   14  1 brown fair   34
1 brown red         5  1 brown medium 41  1 brown dark   40
1 brown black      3  2 blue  fair   46  2 blue  red    21
2 blue    medium 44  2 blue  dark   40  2 blue  black   6
2 green  fair         50  2 green red    31  2 green medium 37
2 green  dark        23  2 brown fair   56  2 brown red    42
2 brown medium 53  2 brown dark   54  2 brown black  13
;

以下は両方通る
*--byステートメントを空白指定----;
proc freq data=Color noprint;
   by ;
   tables eyes Hair Eyes*Hair / out=FreqCount outexpect sparse;
   weight Count;
run;

*--byステートメントに変数を指定------;
proc freq data=Color noprint;
   by region;
   tables eyes Hair Eyes*Hair / out=FreqCount outexpect sparse;
   weight Count;
run;

byステートメントに空白を指定した場合、byステートメントを書かなかったのと同じ結果になります。




2016年7月22日金曜日

ブログの始まり

某ユーザー会にて某氏に誘われたので始めました
某氏にいつまでばれないかを楽しみにしばらくは更新します
何を書くかについては特に決まった方針を立てないことにしております。
あまり縛りすぎると私は続かないので…