Neden bir lojistik regresyonun% 95 güven aralığında manuel olarak hesaplanması ile R'deki confint () fonksiyonunun kullanılması arasında bir fark var?


34

Sevgili millet - Açıklayamayacağım tuhaf bir şey fark ettim, ya sen? Özetle: bir lojistik regresyon modelinde bir güven aralığı hesaplamaya yönelik manuel yaklaşım ve R işlevi confint()farklı sonuçlar verir.

Hosmer ve Lemeshow'un Applied Logistic Regresyon (2. Basım) bölümünden geçiyorum . 3. bölümde, oran oranını ve% 95 güven aralığını hesaplama örneği vardır. R kullanarak modeli kolayca yeniden oluşturabilirim:

Call:
glm(formula = dataset$CHD ~ as.factor(dataset$dich.age), family = "binomial")

Deviance Residuals: 
   Min      1Q  Median      3Q     Max  
-1.734  -0.847  -0.847   0.709   1.549  

Coefficients:
                             Estimate Std. Error z value Pr(>|z|)    
(Intercept)                   -0.8408     0.2551  -3.296  0.00098 ***
as.factor(dataset$dich.age)1   2.0935     0.5285   3.961 7.46e-05 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 136.66  on 99  degrees of freedom
Residual deviance: 117.96  on 98  degrees of freedom
AIC: 121.96

Number of Fisher Scoring iterations: 4

Ancak, parametrelerin güven aralıklarını hesapladığımda, metinde verilene göre farklı bir aralık alıyorum:

> exp(confint(model))
Waiting for profiling to be done...
                                 2.5 %     97.5 %
(Intercept)                  0.2566283  0.7013384
as.factor(dataset$dich.age)1 3.0293727 24.7013080

Hosmer ve Lemeshow aşağıdaki formülü önerir:

e[β^1±z1-α/2xGD^(β^1)]

ve bunun için güven aralığını hesaplarlar as.factor(dataset$dich.age)1(2.9, 22.9).

Bu R yapmak için basit görünüyor:

# upper CI for beta
exp(summary(model)$coefficients[2,1]+1.96*summary(model)$coefficients[2,2])
# lower CI for beta
exp(summary(model)$coefficients[2,1]-1.96*summary(model)$coefficients[2,2])

kitapla aynı cevabı verir.

Ancak, neden herhangi bir düşünceye neden confint()farklı sonuçlar veriyor gibi görünüyor? Kullanırken birçok insan örneği gördüm confint().


1
Hosmer ve Lemeshow için tam bir literatür referansı ekler misiniz? Bir süredir kuklalarında ve kitaplarında öneri aradım, ancak henüz bulamadım.
DavidR

Yanıtlar:


36

Verileri beraberindeki web sitesinden aldıktan sonra , nasıl yapacağım:

chdage <- read.table("chdage.dat", header=F, col.names=c("id","age","chd"))
chdage$aged <- ifelse(chdage$age>=55, 1, 0)
mod.lr <- glm(chd ~ aged, data=chdage, family=binomial)
summary(mod.lr)

Profil olasılığına göre% 95 CI ile elde edilir.

require(MASS)
exp(confint(mod.lr))

MASSPaket otomatik olarak yüklenirse , bu genellikle varsayılandır . Bu durumda alıyorum

                2.5 %     97.5 %
(Intercept) 0.2566283  0.7013384
aged        3.0293727 24.7013080

Şimdi, elle hesapladığınız gibi% 95 Wald CI'leri (asimptotik normallik temelinde) karşılaştırmak isteseydim, confint.default()bunun yerine kullanırdım; bu verim

                2.5 %     97.5 %
(Intercept) 0.2616579  0.7111663
aged        2.8795652 22.8614705

Wald CI'leri çoğu durumda iyidir, ancak profil olasılığı temelli karmaşık örnekleme stratejileriyle faydalı olabilir. Nasıl çalıştıkları fikrini kavramak istiyorsanız, temel prensiplere kısa bir genel bakış: Veteriner epidemiyolojisindeki uygulamalarla profil olabilirlik yöntemine göre güven aralıkları . Ayrıca Venables ve Ripley's MASS kitabına bakınız, §8.4, pp. 220-221.


25

Takip: profil güven aralıkları daha güvenilirdir (olasılık için uygun sınırın seçilmesi bir asimptotik (büyük örnek) varsayımı içerir, ancak bu, Wald güven aralıklarının altındaki ikinci dereceden olasılık yüzdesi varsayımından çok daha zayıf bir varsayımdır. Bildiğim kadarıyla, Wald istatistiklerini hesaplamak için çok daha hızlı olması ve pek çok durumda "yeterince iyi" olması dışında profil güven aralıkları konusunda Wald istatistiğine dair bir tartışma yok (ama bazen yoldan: Hauck- Donner etkisi).


2
Bunun için ve Hauck-Donner etkisine bakmayı önerdiğin için teşekkür ederim. Etki, ders kitaplarında fazla tedavi görmüyor, ancak oldukça önemli görünüyor!
Andrew,

18

Confint () yardım dosyasına bakarsanız, oluşturulan güven aralığının bir Wald güven aralığı yerine bir "profil" aralığı olduğunu göreceksiniz (HL'deki formülden).


5
Ahh. Bu soruya cevap verir. Ancak, bir sonrakine götürür - hangisi tercih edilir?
Andrew,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.