Birisi bana Cox modelimi düz İngilizce olarak açıklayabilir mi?
Bu işlevi kullanarak tüm verilerime aşağıdaki Cox regresyon modelini yerleştirdim cph
. Verilerim adlı bir nesneye kaydedilir Data
. Değişkenler w
, x
ve y
süreklidir; z
iki seviyeli bir faktördür. Zaman ay olarak ölçülür. Bazı hastalarım değişkenleri için veri eksik z
( Not : Dr.Harrell'in aşağıda, modelime ağırlık vermekten kaçınmak için bu değerleri ima ettiğimi ve gelecekte yapacağım tavsiyesini usulüne uygun olarak belirtmiştim).
> fit <- cph(formula = Surv(time, event) ~ w + x + y + z, data = Data, x = T, y = T, surv = T, time.inc = 12)
Cox Proportional Hazards Model
Frequencies of Missing Values Due to Each Variable
Surv(time, event) w x y z
0 0 0 0 14
Model Tests Discrimination
Indexes
Obs 152 LR chi2 8.33 R2 0.054
Events 64 d.f. 4 g 0.437
Center 0.7261 Pr(> chi2) 0.0803 gr 1.548
Score chi2 8.07
Pr(> chi2) 0.0891
Coef S.E. Wald Z Pr(>|Z|)
w -0.0133 0.0503 -0.26 0.7914
x -0.0388 0.0351 -1.11 0.2679
y -0.0363 0.0491 -0.74 0.4600
z=1 0.3208 0.2540 1.26 0.2067
Ayrıca cox.zph
, aşağıdaki komutu kullanarak orantılı tehlike varsayımını test etmeye çalıştım , ancak sonuçlarını nasıl yorumlayacağımı bilmiyorum. Koymak plot()
komutu etrafında bir hata mesajı verir.
cox.zph(fit, transform="km", global=TRUE)
rho chisq p
w -0.1125 1.312 0.2520
x 0.0402 0.179 0.6725
y 0.2349 4.527 0.0334
z=1 0.0906 0.512 0.4742
GLOBAL NA 5.558 0.2347
İlk Sorun
- Birisi yukarıdaki çıktının sonuçlarını düz İngilizce olarak açıklayabilir mi? Tıbbi bir geçmişim var ve istatistik konusunda resmi bir eğitimim yok.
İkinci Sorun
Harrell tarafından önerildiği gibi,
rms
paketi kullanarak 10 kat çapraz doğrulama doğrulamasının 100 yinelemesini gerçekleştirerek modelimi dahili olarak doğrulamak istiyorum (anladığım kadarıyla, bu100 * 10 = 1000
farklı modeller oluşturmayı ve daha sonra hayatta kalma sürelerini tahmin etmelerini ister. daha önce hiç görmedikleri hastaların).validate
Gösterildiği gibi işlevi kullanmayı denedim .> v1 <- validate(fit, method="crossvalidation", B = 10, dxy=T) > v1 index.orig training test optimism index.corrected n Dxy -0.2542 -0.2578 -0.1356 -0.1223 -0.1320 10 R2 0.0543 0.0565 0.1372 -0.0806 0.1350 10 Slope 1.0000 1.0000 0.9107 0.0893 0.9107 10 D 0.0122 0.0128 0.0404 -0.0276 0.0397 10 U -0.0033 -0.0038 0.0873 -0.0911 0.0878 10 Q 0.0155 0.0166 -0.0470 0.0636 -0.0481 10 g 0.4369 0.4424 0.6754 -0.2331 0.6700 10
100x yeniden örnekleme nasıl yapılır? Yukarıdaki kodum sadece bir kez çapraz doğrulama gerçekleştirdiğini düşünüyorum.
Daha sonra modelimin ne kadar iyi olduğunu tahmin etmek istedim. Aşağıdakileri denedim:
> c_index <- abs(v1[1,5])/2 + 0.5 > c_index [1] 0.565984
Bu, modelimin bir madeni parayı çevirmekten sadece biraz daha iyi olduğu anlamına mı geliyor?
Üçüncü Sorun
Harrell, ortak değişken efektler için doğrusallık kazandığımı ve numunemdeki olay sayısının, tüm ortak değişkenlerin doğrusal olması durumunda güvenilir bir modele uyacak kadar büyük olduğunu belirtti.
- Bu, modelime bir çeşit etkileşim terimi eklemem gerektiği anlamına mı geliyor? Eğer öyleyse, ne koyacağınıza dair herhangi bir tavsiye?
cph
bana yukarıdaki çıktıyı düz İngilizce olarak açıklamaya çalışırsa ya da bana bunu yapacak bir referansa işaret ederse çok memnun olurum. Harrell, şimdiye kadar yardımın için çok teşekkürler!