2016-04-01 6 views
1

私はトレーニングセットとバリデーションセットで分けられた一連の患者を持っています。全体の生存を層別化するためのいくつかのパラメータのパフォーマンスを評価したいと思います。したがって、私はpecパッケージ(https://cran.r-project.org/web/packages/pec/pec.pdf)を使用して予測誤差曲線と統合されたbrierスコア(IBS)を生成します。私が持っている質問は、Model_1のIBSがModel_2または参照モデルと比較して大幅に低いかどうかを判断する方法があるかどうかです。予測誤差曲線 - ブライアースコア

ありがとうございました!

models <- list("Model_1" = coxph(Surv(OS, OS_event)~ var_1+var_2, data=df_train), 
       "Model_2" = coxph(Surv(OS, OS_event) ~ var_3+var_4, data=df_train)) 


brier <- pec(object=models, 
      data=df_validate, 
      formula=Surv(OS, OS_event)~age, 
      exact=TRUE, 
      cens.model="marginal", 
      traindata = df_train) 
plot(brier) 
print(brier) 
+0

これらはネストされたモデルではないため、境界性に依存する通常の方法は有益ではありません。一部の人々は、情報の基準をいくつか使用すると、その限界を乗り越えることができると信じています。私はそれについてはあまりよく分かりません。実際の結果を掲載するべきでしょうか?現時点では、これはあまりにも曖昧すぎて、StackOverflowが提供するはずのコード化された答えを提供していないようです。 –

答えて

1

方法は、クロスバリデーションを何度も実行し、モデル1のIBSとモデルとの間の統計的に有意な差があるかどうかを決定するためにt検定又はウィルコックス検定(ノンパラメトリックバージョン)を使用することである一2.低いP値は、モデル1とモデル2の平均IBSスコアが等しいという帰無仮説を棄却します。

TEALLというデータフレームにIBSスコアが格納されているとします。ここで、列1はモデル1のスコア、列2はモデル2のスコアです。各行は別の相互検証を表します。次に、

ttest = t.test(TEALL[,1], TEALL[,2], paired=TRUE) 
wtest = wilcox.test(TEALL[,1], TEALL[,2],paired=TRUE)