2011-08-01 56 views
5

我試圖探索在數據集中輸入缺失值的方法。我的數據集包含年份(2001-2009),月份(1-12),性別(M/F)和年齡組(4組)的發生次數(非自然,自然和總數)。預測/輸入R中泊松GLM迴歸的缺失值?

我正在探索的一種插補技術是(泊松)迴歸插補法。

說我的數據是這樣的:

Year Month Gender AgeGroup Unnatural Natural Total 
569 2006  5 Male  15up  278  820 1098 
570 2006  6 Male  15up  273  851 1124 
571 2006  7 Male  15up  304  933 1237 
572 2006  8 Male  15up  296 1064 1360 
573 2006  9 Male  15up  298  899 1197 
574 2006 10 Male  15up  271  819 1090 
575 2006 11 Male  15up  251  764 1015 
576 2006 12 Male  15up  345  792 1137 
577 2007  1 Female  0  NA  NA NA 
578 2007  2 Female  0  NA  NA NA 
579 2007  3 Female  0  NA  NA NA 
580 2007  4 Female  0  NA  NA NA 
581 2007  5 Female  0  NA  NA NA 
... 

做一個基本的GLM迴歸之後 - 96觀察已經由於他們是失蹤刪除。

R中有沒有一種方法/包/函數可以使用這個GLM模型的係數'預測'(也就是推測)Total的缺失值(即使它只是將它存儲在一個單獨的數據框中 - 我將使用Excel來合併它們)?我知道我可以使用這些係數來預測不同的分層排 - 但這會持續下去。希望有一步功能/方法?

Call: 
glm(formula = Total ~ Year + Month + Gender + AgeGroup, family = poisson) 

Deviance Residuals: 
     Min   1Q  Median   3Q  Max 
-13.85467 -1.13541 -0.04279 1.07133 10.33728 

Coefficients: 
       Estimate Std. Error z value Pr(>|z|)  
(Intercept) 13.3433865 1.7541626 7.607 2.81e-14 *** 
Year   -0.0047630 0.0008750 -5.443 5.23e-08 *** 
Month   0.0134598 0.0006671 20.178 < 2e-16 *** 
GenderMale  0.2265806 0.0046320 48.916 < 2e-16 *** 
AgeGroup01-4 -1.4608048 0.0224708 -65.009 < 2e-16 *** 
AgeGroup05-14 -1.7247276 0.0250743 -68.785 < 2e-16 *** 
AgeGroup15up 2.8062812 0.0100424 279.444 < 2e-16 *** 
--- 
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 

(Dispersion parameter for poisson family taken to be 1) 

    Null deviance: 403283.7 on 767 degrees of freedom 
Residual deviance: 4588.5 on 761 degrees of freedom 
    (96 observations deleted due to missingness) 
AIC: 8986.8 

Number of Fisher Scoring iterations: 4 

回答

6

首先,要非常小心隨機丟失的假設。您的示例看起來像缺失與女性和年齡組共同出現。你應該真的測試失蹤是否與任何預測相關(或者是否有任何預測失蹤)。如果是這樣,那麼迴應可能會出現偏差。

其次,你正在尋找的功能可能是predict,這可能需要一個glm模型。有關更多指導,請參閱?predict.glm。您可能需要擬合一系列模型(即嵌套模型)來解決缺失值。

+0

感謝您的快速響應!我會看看?predict.glm!關於失蹤 - 基本上,2007年和2008年的幾個月都不見了(對於男性和女性以及所有年齡組)。我嘗試瞭解失蹤機制 - 但仍然有點模糊。我會看到預測值的外觀,然後進一步調查。 我可能需要閱讀關於模型級聯(嵌套模型)。謝謝 – OSlOlSO

+0

+1 NA反應的好處。 –

+0

注意:級聯只是在缺少觀察的情況下的一系列模型。在數學上,如果缺少預測變量,則不存在GLM模型,因此您需要爲該場景提供替代模型。你如何選擇它取決於你。建模功能應該是安全的,可以說「我不知道」 - 就像智者一樣。 :) – Iterator

0

mice包提供了一個相同名稱的功能,允許使用基於其他值的迴歸方案來預測每個缺失值。它可以應對預測因子,因爲它使用迭代MCMC算法。

我不認爲泊松迴歸是一種選擇,但是如果所有的計數都與正常回歸一樣大,應該提供合理的近似值。