İngiltere'de kafa travması veri tabanındaki retrospektif verilere dayanan bir lojistik regresyon modeli geliştiriyorum. Kilit sonuç 30 günlük mortalite ("Hayatta Kalma" ölçüsü olarak ifade edilir). Önceki çalışmalarda sonuç üzerinde önemli etkisi olduğuna dair kanıtları yayınlanmış diğer önlemler şunlardır:
Year - Year of procedure = 1994-2013
Age - Age of patient = 16.0-101.5
ISS - Injury Severity Score = 0-75
Sex - Gender of patient = Male or Female
inctoCran - Time from head injury to craniotomy in minutes = 0-2880 (After 2880 minutes is defined as a separate diagnosis)
İkili bağımlı değişken göz önüne alındığında, bu modelleri kullanarak, lrm kullanarak bir lojistik regresyon oluşturdum.
Model değişken seçim yöntemi, aynı tanıyı modelleyen mevcut klinik literatüre dayandırılmıştır. Hepsi geleneksel olarak fraksiyonel polinomlar aracılığıyla modellenen ISS dışında doğrusal bir uyumla modellenmiştir. Hiçbir yayın yukarıdaki değişkenler arasında bilinen önemli etkileşimleri tanımlamamıştır.
Frank Harrell'in tavsiyelerini takiben, ISS'yi modellemek için regresyon spline'ları kullanmaya devam ettim (bu yaklaşımın aşağıdaki yorumlarda vurgulanan avantajları vardır). Bu nedenle model aşağıdaki gibi önceden belirtilmiştir:
rcs.ASDH<-lrm(formula = Survive ~ Age + GCS + rcs(ISS) +
Year + inctoCran + oth, data = ASDH_Paper1.1, x=TRUE, y=TRUE)
Modelin sonuçları:
> rcs.ASDH
Logistic Regression Model
lrm(formula = Survive ~ Age + GCS + rcs(ISS) + Year + inctoCran +
oth, data = ASDH_Paper1.1, x = TRUE, y = TRUE)
Model Likelihood Discrimination Rank Discrim.
Ratio Test Indexes Indexes
Obs 2135 LR chi2 342.48 R2 0.211 C 0.743
0 629 d.f. 8 g 1.195 Dxy 0.486
1 1506 Pr(> chi2) <0.0001 gr 3.303 gamma 0.487
max |deriv| 5e-05 gp 0.202 tau-a 0.202
Brier 0.176
Coef S.E. Wald Z Pr(>|Z|)
Intercept -62.1040 18.8611 -3.29 0.0010
Age -0.0266 0.0030 -8.83 <0.0001
GCS 0.1423 0.0135 10.56 <0.0001
ISS -0.2125 0.0393 -5.40 <0.0001
ISS' 0.3706 0.1948 1.90 0.0572
ISS'' -0.9544 0.7409 -1.29 0.1976
Year 0.0339 0.0094 3.60 0.0003
inctoCran 0.0003 0.0001 2.78 0.0054
oth=1 0.3577 0.2009 1.78 0.0750
Daha sonra modelden tahminlerin doğruluğunu değerlendirmek için rms paketindeki kalibrasyon fonksiyonunu kullandım. Aşağıdaki sonuçlar elde edildi:
plot(calibrate(rcs.ASDH, B=1000), main="rcs.ASDH")
Model tasarımının tamamlanmasının ardından, Olay Yılı'nın hayatta kalma üzerindeki etkisini, medyan değerlerini sürekli değişkenlere dayandırırken kategorik değişkenlerdeki modu göstermek için aşağıdaki grafiği oluşturdum:
ASDH <- Predict(rcs.ASDH, Year=seq(1994,2013,by=1),Age=48.7,ISS=25,inctoCran=356,Other=0,GCS=8,Sex="Male",neuroYN=1,neuroFirst=1)
Probabilities <- data.frame(cbind(ASDH$yhat,exp(ASDH$yhat)/(1+exp(ASDH$yhat)),exp(ASDH$lower)/(1+exp(ASDH$lower)),exp(ASDH$upper)/(1+exp(ASDH$upper))))
names(Probabilities) <- c("yhat","p.yhat","p.lower","p.upper")
ASDH<-merge(ASDH,Probabilities,by="yhat")
plot(ASDH$Year,ASDH$p.yhat,xlab="Year",ylab="Probability of Survival",main="30 Day Outcome Following Craniotomy for Acute SDH by Year", ylim=range(c(ASDH$p.lower,ASDH$p.upper)),pch=19)
arrows(ASDH$Year,ASDH$p.lower,ASDH$Year,ASDH$p.upper,length=0.05,angle=90,code=3)
Yukarıdaki kod aşağıdaki çıktı ile sonuçlanmıştır:
Kalan sorularım şunlar:
1. Spline Yorumu - Genel değişken için birleştirilmiş spline'ların p-değerini nasıl hesaplayabilirim?
anova(rcs.ASDH)
.
plot(Predict(rcs.ASDH, Year))
. Diğer değişkenlerin farklı eğriler oluşturarak değişmesine izin verebilirsinizplot(Predict(rcs.ASDH, Year, age=c(25, 35)))
.