No.10232 proc genmod での odds 比の表示  【sg】 2009/07/01(Wed) 10:37

SAS (version 9.1) の proc genmod で logistic 回帰分析をする際,対数 odds 比ではなく odds 比そのものを結果に出力させる方法はありますか?

No.10233 Re: proc genmod での odds 比の表示  【青木繁伸】 2009/07/01(Wed) 15:53

exp(log_odds) で,電卓ででも計算すれば済むことでしょうか?

No.10234 Re: proc genmod での odds 比の表示  【sg】 2009/07/01(Wed) 17:00

仰るとおり,通常は電卓で済む問題です.
マクロを使って大量に output させる関係上,proc logistic のように odds 比そのものを出力させることができればと考えております.
サンプルサイズが大きいためか(30,000,000件程度),proc genmod では30分程度の計算が proc logistic では10時間以上かかってしまいます.

No.10237 Re: proc genmod での odds 比の表示  【青木繁伸】 2009/07/01(Wed) 21:02

出力を適当なプログラム言語(AWK でも PERL でも R でも)で作ったプログラム(スクリプト)で読んで,該当する箇所のlog odds から odds を計算して,両方を出力すればよいのでは。

No.10239 Re: proc genmod での odds 比の表示  【TY】 2009/07/02(Thu) 10:35

SAS上で解決するなら,
ODS OUTPUT ParameterEstimetes= outdat;
のようにパラメータ推定値をSASデータセットに出力して,データステップで
or= EXP(Estimate);
のようにすれば良いのでは,と思います。

No.10240 Re: proc genmod での odds 比の表示  【sg】 2009/07/02(Thu) 12:27

> 出力を適当なプログラム言語(AWK でも PERL でも R でも)で作ったプログラム(スクリプト)で読んで,該当する箇所のlog odds から odds を計算して,両方を出力すればよいのでは。

ありがとうございます.proc genmod のオプションで対応できなければ,アウトプットのファイルを R に読み込ませて処理するつもりでした.

# awk って指数関数もあるんですね.知りませんでした.


> SAS上で解決するなら,
> ODS OUTPUT ParameterEstimetes= outdat;
> のようにパラメータ推定値をSASデータセットに出力して,

それも考えてみたのですが,分析のパターンが100以上あるため難しいと思っておりました.よく考えると,オッズ比を求める部分も macro 内に含めてしまえば良いわけですね.とりあえずそれでやってみようと思います.ありがとうございました.

● 「統計学関連なんでもあり」の過去ログ--- 042 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る