R'deki sıfır şişirilmiş sayım modelleri: gerçek avantajı nedir?


11

Sıfır şişirilmiş kuş sayılarını analiz etmek için R paketi pscl'yi kullanarak sıfır şişirilmiş sayım modelleri uygulamak istiyorum . Ancak, ana işlevlerden biri için ( ? Zeroinfl ) dokümantasyonda verilen örneğe bir göz atarak, bu modellerin gerçek avantajından şüphe etmeye başladım. Burada verilen örnek koda göre, sıfır bileşen için regresyonlu standart poisson, yarı-poisson ve negatif biyonom modelleri, basit sıfır şişirilmiş poisson ve negatif binom modelleri ve sıfır şişirilmiş poisson ve negatif-binom modelleri hesapladım. Sonra gözlemlenen ve yerleştirilmiş verilerin histogramlarını inceledim. (İşte bunu kopyalamak için kod.)

library(pscl)
data("bioChemists", package = "pscl")

## standard count data models
fm_pois  <- glm(art ~ .,    data = bioChemists, family = poisson)
fm_qpois <- glm(art ~ .,    data = bioChemists, family = quasipoisson)
fm_nb    <- glm.nb(art ~ ., data = bioChemists)

## with simple inflation (no regressors for zero component)
fm_zip  <- zeroinfl(art ~ . | 1, data = bioChemists)
fm_zinb <- zeroinfl(art ~ . | 1, data = bioChemists, dist = "negbin")

## inflation with regressors
fm_zip2  <- zeroinfl(art ~ fem + mar + kid5 + phd + ment | fem + mar + kid5 + phd + 
                     ment, data = bioChemists)
fm_zinb2 <- zeroinfl(art ~ fem + mar + kid5 + phd + ment | fem + mar + kid5 + phd + 
                     ment, data = bioChemists, dist = "negbin")

## histograms
breaks <- seq(-0.5,20.5,1)
par(mfrow=c(4,2))
hist(bioChemists$art,  breaks=breaks)
hist(fitted(fm_pois),  breaks=breaks)
hist(fitted(fm_qpois), breaks=breaks)
hist(fitted(fm_nb),    breaks=breaks)
hist(fitted(fm_zip),   breaks=breaks)
hist(fitted(fm_zinb),  breaks=breaks)
hist(fitted(fm_zip2),  breaks=breaks)
hist(fitted(fm_zinb2), breaks=breaks)!

Gözlenen ve takılan verilerin histogramı

Farklı modeller arasında herhangi bir temel fark göremiyorum (bunun dışında örnek veriler bana çok "sıfır şişirilmiş" görünmüyor ...); aslında modellerin hiçbiri sıfırların yarısını makul olarak tahmin etmez. Sıfır şişirilmiş modellerin avantajını açıklayan var mı? Sanırım bu işlevi örnek olarak seçmek için bir neden olmalı.

Yanıtlar:


15

Bence bu sıfır şişirilmiş modellerin avantajlarını keşfetmek için kötü seçilmiş bir veri seti, çünkü belirttiğiniz gibi o kadar da sıfır enflasyon yok.

plot(fitted(fm_pois), fitted(fm_zinb))

tahmini değerlerin hemen hemen aynı olduğunu gösterir.

Sıfır enflasyona sahip veri setlerinde, ZI modelleri Poisson'dan farklı (ve genellikle daha iyi oturan) sonuçlar verir.

Modellerin uyumunu karşılaştırmanın bir başka yolu, artıkların boyutunu karşılaştırmaktır:

boxplot(abs(resid(fm_pois) - resid(fm_zinb)))

Burada, Poisson'dan artıkların ZINB'den daha küçük olduğunu göstermektedir. Eğer gerçekten sorunlu olan kalıntı büyüklüğüne dair bir fikriniz varsa, her modeldeki kalıntıların ne kadarının bunun üzerinde olduğunu görebilirsiniz. Örneğin, 1'den fazla uzakta olmak kabul edilemezse

sum(abs(resid(fm_pois) > 1))
sum(abs(resid(fm_zinb) > 1))

ikincisinin biraz daha iyi olduğunu gösterir - 20 daha az büyük kalıntı.

O zaman soru, modellerin ek karmaşıklığının sizin için değer olup olmadığıdır.


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.