No.12743 統計解析ソフトによる推定値の違い  【pri】 2010/05/31(Mon) 11:31

質問です。
生存時間,イベント,リスク因子の項目が,全く同じデータセットを使って,Rと,JMPのそれぞれで,比例ハザード分析を行っています。
すると,推定値の項目が,連続変数では同じ値が計算され,カテゴリカル変数(あり,なしです)では,Rの計算結果がJMPの2倍の数字が計算されます。どちらも,変数のタイプは名義変数として計算しています。
統計ソフトによって,パラメータ推定値がこのよう2倍の数字にずれることはあり得るのでしょうか?
自分としては,Rで計算する際に,変数のカテゴリーを間違って定義しているからのような気がしていますが,よくわかりません。
アドバイスいただけますと助かります。

No.12744 Re: 統計解析ソフトによる推定値の違い  【青木繁伸】 2010/05/31(Mon) 11:40

デフォルトで,R ではカテゴリー変数の最初のカテゴリーをベースラインにするのに対して,JMP では最後のカテゴリーをベースラインにするという違いがありますが,その点はどうなっていますか?

No.12745 Re: 統計解析ソフトによる推定値の違い  【pri】 2010/05/31(Mon) 11:51

RではありなしをTRUE,FALSE,JMPではありなしをhai,noとしていますので,ベースラインは各々 FALSE, noとなると考えています。不思議なことに,JMPの説明変数を名義尺度から順序尺度にすると,Rの推計値と絶対値が同じでマイナスになった推計値が返さ れます。想像では両ソフトがベースラインとしている部分がずれているような気がするのですが,そもそもどちらが正しいのかよくわからなくて悩んでいます。

No.12746 Re: 統計解析ソフトによる推定値の違い  【波音】 2010/05/31(Mon) 13:54

比例ハザードモデルを解析する関数については無知ですが,Rでは対比による因子のコーディングを行う際に"SAS の真似"をすることができます(たぶんSASもJMPも元は同じなのではないかと仮定して ^^; )。青木先生が提示されているようにRでは最初の水準(カテゴリ)をベースラインとしており,これはこういうことです(contr.treatmentは 第1水準に対応するダミー変数を削除している)。

> A <- rep(1:3, c(3,3,3))
> A <- as.factor(A)
> C(A, contr.treatment)
[1] 1 1 1 2 2 2 3 3 3
attr(,"contrasts")
2 3
1 0 0
2 1 0
3 0 1
Levels: 1 2 3

一方でSASは最後の水準をベースラインとしており,これはこういうことです(contr.SASは最後の水準に対応するダミー変数を削除している)。

> C(A, contr.SAS)
[1] 1 1 1 2 2 2 3 3 3
attr(,"contrasts")
1 2
1 1 0
2 0 1
3 0 0
Levels: 1 2 3

例 えばlm()関数では引数に lm(Y ~ A, contrasts=list(A="contr.SAS")) と指定することでSASと同じ解析結果が得られます。比例ハザードモデルの解析でも同様にして確認してみてはいかがでしょうか。残念ながら contr.JMPはありませんが・・・

No.12747 Re: 統計解析ソフトによる推定値の違い  【青木繁伸】 2010/05/31(Mon) 14:14

ちょうど2倍ということで,こちらの方ですかね?JMP の FAQ のようです。

Q. JMPの比例ハザードのあてはめで求めたリスク比とその信頼区間がSASで求めたものと異なります。これはなぜですか?
http://www.jmp.com/japan/support/faq/stat_3004.shtml

JMP は,「斬新*過*ぎ*る*プログラム」なので,いろいろ不都合な点があるように思います。

No.12748 Re: 統計解析ソフトによる推定値の違い  【pri】 2010/05/31(Mon) 14:44

ありがとうございます。
青木先生のご指摘の通りのようです。
HPにあるように,hai,noで名 義変数としていたのを,haiを1, noを0としてダミー変数として計算した結果,Rが返したものと同じ推計値,が出ました。以前に森實先生の著書で,JMPはアルファベットの後ろを基準に 前のオッズを出すと読んだことがあり,そこだけ覚えていて,noにたいしてhaiとした名義変数のままで解析したのが悪かったようです。Rとどちらが正し いかかなり悩んでいたのですが,解決しました。
私は,統計ソフトによる解析を最初がJMPで入ったため,Rの勉強を進めるにつれて,JMPを考えなしに使うと間違いに気付かないまま解析を進めてしまう可能性を,今になって感じています(もちろん直感的にマウスクリックで進めるところなど,よいソフトですけれども)。
本当に助かりました。ありがとうございました。

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