Cox PHモデルから予測ハザード率を計算する方法は?


11

次のCox PHモデルがあります。

(時間、イベント)〜X + Y + Z

私は予測ハザード取得したいと思い金利(私はハザード率について話していないで、特定の値が与えられ、ハザード比)をXYZmuhaz Rパッケージが観測されたハザード率を計算できることは知っていますが、予測モデルに興味があります。

Rでこれを行う方法はありますか?


2
あなたの「方程式」はバイナリの結果をモデル化しているようです。ここで、CoxのPHモデルは生存データを扱い、左側にあるのはハザード率になるはずです...明確にする必要があると思います...
ocram

2
Coxモデルは、ベースラインハザード関数(通常はとして示されます)を推定しません。モデルから発生率を推定するには、代わりにパラメトリック生存モデルを使用する必要があります。λ0(t)
boscovich

1
質問にはあいまいさがいくつかあります。ハザード関数は確率であり、率ではありません。それはあなたが望むハザード機能ですか、それとも何か他のものですか?
フォミテ

回答:


16

ベースラインハザード率を取得するためのR生存パッケージの関数はbasehazです。

次に、さまざまなを乗算して、見つけた係数を指定して特定のハザード率を取得する必要があります。eβ

簡単な例が役立つかもしれません:

library(survival) #survival analysis
library(eha) #used for data 
data(oldmort) #create the data

# Create surv data set
mort <- Surv(time=oldmort$enter,time2=oldmort$exit,event=oldmort$event)

reg_fit <- coxph(formula=mort~oldmort$sex)
summary(reg_fit)

# Now get baseline curve
baseline <- basehaz(reg_fit)

# Draw baseline hazard (that's male)
plot(baseline$time, baseline$hazard, type='l',main="Hazard rates") 

# Draw female hazard
lines(baseline$time, exp(-0.1929)*baseline$hazard, col="blue") 

、コックス回帰の要約結果からコピーして貼り付けられたデータでは女性は危険率があることを暗示し、低い男性よりもを。18 exp(0.1929)=0.8245summary(reg_fit)18%


13

関数basehaz(前の回答から)は、ハザード関数(レート)ではなく、累積ハザードを提供します。その問題はハザード機能に関するものだと思います。ハザード関数を推定するには、平滑化のタイプを指定する必要があります(密度推定など)。MuhazRパッケージは、一つのサンプルデータのためにこれを行うことができます。Coxモデルのベースラインハザードに対してこれを実行できる関数を知りません。これも必要です。自分で累積ハザードをなめらかにする必要があると思います。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.