2016-08-15 34 views
0

我使用glmer查看了Year和Treatment對木材覆蓋點數量的影響,然後繪製了殘差以檢查是否正常,並且生成的圖形略微偏向右側。這是否正常分發?如何在非正常數據上正確執行glmmPQL?

model <- glmer(Number~Year*Treatment(1|Year/Treatment), data=data,family=poisson) 

enter image description here

此網站建議使用glmmPQL如果你的數據是不正常的:http://ase.tufts.edu/gsc/gradresources/guidetomixedmodelsinr/mixed%20model%20guide.html

library(MASS) 
library(nlme) 

model1<-glmmPQL(Number~Year*Treatment,~1|Year/Treatment, 
       family=gaussian(link = "log"), 
       data=data,start=coef(lm(Log~Year*Treatment)), 
       na.action = na.pass,verbose=FALSE) 
summary(model1) 
plot(model1) 

現在你在Excel文檔中或在R代碼轉換數據(Number1 <- log(Number))運行這個模型之前? link="log"暗示數據已經被對數轉換,還是暗示它會轉換它?

如果您的數據爲零,是否可以將所有觀察值加1以使其大於零以便記錄變換:Number1<-log(Number+1)

fit<-anova(model,model1,test="Chisq")足以比較兩個模型?

非常感謝您的任何建議!

回答

1

tl; dr您對我的診斷情節看起來不錯,您可以繼續解讀您的結果。

  • 這個公式:

    Number~Year*Treatment+(1|Year/Treatment) 
    

可能不是很正確(除上述條款...之間缺少+)一般情況下,你不應該包括兩個相同的術語隨機效應和固定效應(儘管有一個例外 - 如果Year具有多個值並且每年有多個觀測值,您可以將其包括爲固定效應中的連續協變量和分組事實或在隨機效應 - 所以這可能是正確的)。

  • 我對連結介紹並不滿意;在快速瀏覽沒有什麼可怕它錯了,但似乎有很多輕微的不準確和混亂。 「如果數據不正常,則使用glmmPQL」的確是「如果數據不正常,您可能想使用GLMM」的簡寫。您的glmer型號應該沒問題。
  • 解讀診斷圖是一種藝術,但是你上面顯示的偏差程度看起來不是問題。因爲您不需要對數據進行日誌轉換,所以您不需要進入如何對包含零的數據進行日誌轉換的小雜亂問題。通常log(1+x)轉換爲計數數據是合理的 - 但在這裏也是不必要的。
  • anova()在這種情況下做了似然比檢驗,這是比較模型的合理方法。