対数正規生存関数の平均生存時間


10

指数分布またはワイブル分布の平均生存時間を求める方法を示す多くの式を見つけましたが、対数正規生存関数の運はかなり低くなっています。

次の生存関数があるとします。

S(t)=1ϕ[ln(t)μσ]

どのようにして平均生存時間を求めますか。私が理解しているように、は推定スケールパラメータであり、パラメトリック生存モデルのexp(β)はμです。S(t)= 0.5を設定した後、それを象徴的に操作してtを単独で取得できると思いますが、特に困惑しているのは、実際にすべての推定値を入力して平均を取得することになる場合、Rのようなものでϕを処理する方法です時間。σβμϕ

これまでのところ、私は次のように生存関数(および関連する曲線)を生成しています。

beta0 <- 2.00
beta1 <- 0.80
scale <- 1.10

exposure <- c(0, 1)
t <- seq(0, 180)
linmod <- beta0 + (beta1 * exposure)
names(linmod) <- c("unexposed", "exposed")

## Generate s(t) from lognormal AFT model

s0.lnorm <- 1 - pnorm((log(t) - linmod["unexposed"]) / scale)
s1.lnorm <- 1 - pnorm((log(t) - linmod["exposed"]) / scale)

## Plot survival
plot(t,s0.lnorm,type="l",lwd=2,ylim=c(0,1),xlab="Time",ylab="Proportion Surviving")
lines(t,s1.lnorm,col="blue",lwd=2)

これにより、次の結果が得られます。

ここに画像の説明を入力してください


3
tmed=exp(μ)

@ocram-まあ、それは...簡単でした。それを答えに変換すれば受け入れます。しかし、好奇心から、なぜ私が「平均」ではなく「中央値」を意味すると思いますか?
Fomite 2012

1
中央値ではなく平均値を意味する場合は、S(t)= 0.5を設定しません。対数正規は非常に歪んだ分布であり、平均値と中央値は異なります。平均生存時間は中央値よりも複雑です。
Michael R.Chernick

@EpiGard:マイケルCが指摘した理由により、「平均」ではなく「中央値」と想定しました;-)私はコメントを回答に変換します。
ocram

1
平均生存時間はそれほど複雑ではありません。私の答えを見てください。(さまざまなモーメントも比較的簡単に計算されます。)
マークアドラー

回答:


7

tmedS(t)=12tmed=exp(μ)Φ(0)=12Φ


μ=320.1

ここに画像の説明を入力してください


t=1

5

R rmsパッケージは次のことに役立ちます。

require(rms)
f <- psm(Surv(dtime, event) ~ ..., dist='lognormal')
m <- Mean(f)
m   # see analytic form
m(c(.1,.2)) # evaluate mean at linear predictor values .1, .2
m(predict(f, expand.grid(age=10:20, sex=c('male','female'))))
# evaluates mean survival time at combinations of covariate values

将来的には非常に役立つ可能性がありますが、実際の生存データ自体はRに含まれていません。ある時点で変換するのはリストにありますが、現在のところ、SASで行われるその他すべてのことだけを係数にしています。
Fomite 2012

Rの生存分析機能はSASよりも優れていることがわかります。
フランクハレル2012

同意-したがって、「翻訳するリスト」にありますが、Rについてもほとんど知りません。このビットは簡単ですが、プロジェクトの拡張部分はかなり複雑で、SASに既存の実装があります。
Fomite 2012

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