Bagaimana cara menghasilkan kurva selamat yang diprediksi dari model yang lemah (menggunakan R coxph)?

13

Saya ingin menghitung fungsi survivor yang diprediksi untuk model bahaya proporsional Cox dengan persyaratan yang rapuh [menggunakan paket survival]. Tampaknya ketika istilah kelemahan ada dalam model, fungsi survivor yang diprediksi tidak dapat dihitung.

## Example 
require(survival)
data(rats)

## Create fake weight
set.seed(90989)
rats$weight<-runif(nrow(rats),0.2,0.9)

## Cox model with gamma frailty on litter
fit <- coxph(Surv(time, status) ~ rx+weight+frailty(litter,dist="gamma"),
data = rats) 

## Compute survival curve from the cox model for rx=0 and weight=0.5 kg
plot(survfit(fit, newdata=data.frame(rx=0,weight=0.5)),xlab = "time",
ylab="Survival") 

## Running this line, I get following error message:
Error in survfit.coxph(fit, newdata = data.frame(rx = 0, weight = 0.5)) : 
Newdata cannot be used when a model has sparse frailty terms

Saya mencoba menggunakan metode perhitungan yang jarang dan non-jarang dengan menggunakan sparse=TRUE, Sparse =FALSE, sparse =0, sparse=5opsi. Namun, tidak ada yang berhasil.

Bagaimana saya menghitung prediksi kurva selamat berdasarkan model kelemahan saya?

ledzep
sumber

Jawaban:

3

Masalahnya di sini adalah sama seperti yang akan diperoleh untuk mencoba memprediksi hasil dari model efek campuran linier. Karena kurva survival tidak dapat dilipat, setiap sampah dalam contoh Anda memiliki kurva survival spesifik-sampah sesuai dengan model yang Anda cocok. Kelemahan seperti yang Anda ketahui adalah sama dengan intersepsi acak yang menunjukkan tingkat umum variabel perancu dan prognostik endemik untuk setiap sampah, mungkin karena sifat genetiknya. Oleh karena itu prediktor linier untuk rasio bahaya adalah campuran dari efek tetap yang diamati dan efek serasah acak. Tidak seperti model campuran, model Cox cocok dengan istilah kelemahan dengan regresi yang dikenakan sanksi, objek yang sesuai adalah kelas coxph-penaldan tidak ada metode untuk survreg.coxph-penal, sehingga upaya untuk membuat prediktor linier gagal. Ada beberapa solusi.

  1. Sesuai model marginal dengan kovariat terpusat.

  2. Pusatkan kovariat, pas 1, lalu paskan model efek acak menggunakan coxmedan ekstrak efek acak, tambahkan ke prediktor linier dengan offset untuk menghitung kurva kelangsungan hidup spesifik strata untuk setiap sampah.

  3. Lakukan 2 dan meminggirkan mereka dengan rata-rata semua kurva kelangsungan hidup bersama, pendekatan terpisah untuk menyesuaikan model marginal.

  4. Gunakan efek tetap atau strata dalam model Cox marginal untuk memprediksi kurva kelangsungan hidup yang berbeda untuk setiap sampah.

AdamO
sumber