差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
r:survival:survfit [2018/12/11 19:19] – watalu | r:survival:survfit [2018/12/11 19:32] (現在) – watalu | ||
---|---|---|---|
行 1: | 行 1: | ||
- | ==== ノンパラメトリックな生存関数の推定法 ==== | + | ==== カプラン・マイヤー法 ==== |
- | 生存関数は時点ごとの生存率を表す関数であり、カプラン・マイヤー法は、特定の確率分布を仮定しない生存関数の推定法である。 | + | 生存関数は時点ごとの生存率を表す関数であり、カプラン・マイヤー法は、特定の確率分布を仮定しない生存関数の推定法である。ノンパラメトリックな生存関数の推定法と言う。 |
その推定量(推定値の計算方法)を、カプラン・マイヤー推定量と呼ぶ。 | その推定量(推定値の計算方法)を、カプラン・マイヤー推定量と呼ぶ。 | ||
ある時点の生存関数をそれまでの各時点の生存率の積で推定する、という計算方法を用いており、この推定量の性質を示す際にproduct limitという考え方が導入されることから、product limit推定量とも呼ばれる。 | ある時点の生存関数をそれまでの各時点の生存率の積で推定する、という計算方法を用いており、この推定量の性質を示す際にproduct limitという考え方が導入されることから、product limit推定量とも呼ばれる。 | ||
行 16: | 行 16: | ||
|10.0|打ち切り||10.0|0| | |10.0|打ち切り||10.0|0| | ||
|3.5|故障||5.5|1| | |3.5|故障||5.5|1| | ||
+ | |||
+ | このデータを小さい順に並び替える。 | ||
+ | |||
+ | |イベント発生時点|イベントの種類| | ||
+ | |3.5|故障| | ||
+ | |5.5|故障| | ||
+ | |10.0|打ち切り| | ||
+ | |10.3|故障| | ||
+ | |||
+ | そして時点ごとに、それまでに生存していた数、故障数、打ち切り数を求める。 | ||
+ | |||
+ | |イベント発生時点|イベントの種類|時点直前までの生存数|その時点での故障数|その時点での打ち切り数| | ||
+ | |3.5|故障|4|1|0| | ||
+ | |5.5|故障|3|1|0| | ||
+ | |10.0|打ち切り|2|0|1| | ||
+ | |10.3|故障|1|1|0| | ||
+ | |||
+ | 各時点での故障率は、故障数/ | ||
+ | |||
+ | |イベント発生時点|イベントの種類|時点直前までの生存数|その時点での故障数|その時点での打ち切り数|故障率| | ||
+ | |3.5|故障|4|1|0|1/ | ||
+ | |5.5|故障|3|1|0|1/ | ||
+ | |10.0|打ち切り|2|0|1|0/ | ||
+ | |10.3|故障|1|1|0|1/ | ||
+ | |||
+ | 生存率は、前の時点の生存率×(1-その時点の故障率)で繰り返し計算できる。 | ||
+ | |||
+ | |イベント発生時点|イベントの種類|時点直前までの生存数|その時点での故障数|その時点での打ち切り数|故障率|生存率| | ||
+ | |3.5|故障|4|1|0|1/ | ||
+ | |5.5|故障|3|1|0|1/ | ||
+ | |10.0|打ち切り|2|0|1|0/ | ||
+ | |10.3|故障|1|1|0|1/ | ||
+ | |||
+ | これがカプラン・マイヤー法である。 | ||
+ | 簡単な計算のように見えて、この方法の性質を検討するには、少し難しい確率論を学ぶことになる。 | ||
+ | 以下では、この方法が正しいとして、話を進める。 | ||
+ | |||
+ | === 関数survfit === | ||
このデータをデータフレームで与えるには、次のようにRに伝える。 | このデータをデータフレームで与えるには、次のようにRに伝える。 | ||
行 91: | 行 129: | ||
{{: | {{: | ||
+ | |||
+ | |||
+ | 実線の折れ線が、カプラン・マイヤー法で推定した生存関数である。1から生存関数を引けば、累積分布関数の推定ができる。このグラフからまずは、寿命分布の密度関数が一山か、二山以上か、を読み取ろうとする。 | ||
+ | |||
+ | survfitが出力した各時点でのリスクセットの大きさn.riskとその時点での故障数n.eventの比を計算すると、故障率曲線も推定できる。 | ||
+ | < | ||
+ | X.survfit = survfit(Surv(time, | ||
+ | X.survfit$n.event/ | ||
+ | </ | ||
+ | これを縦軸に、時間を横軸にとったグラフ | ||
+ | < | ||
+ | plot(X.survfit$time, | ||
+ | | ||
+ | </ | ||
+ | が故障率曲線のノンパラメトリックな推定値となる。 | ||
+ | |||
+ | === ノンパラメトリックな推定量の長所と短所 === | ||
+ | |||
+ | ノンパラメトリックな推定量は、確率分布を仮定しないので、当初から色眼鏡で見ることがなく、データをそのまま吟味できるという長所を持つ。実際に観測された時点から先の予測ができない、という短所も合わせ持つ。また、精度よく確率分布を推定するには、とても大きいサンプルを必要とすることも、短所である。 |