ポアソンGLMが整数以外の数値を受け入れるという事実に本当に驚かされます!見て:
データ(の内容data.txt
):
1 2001 0.25 1
1 2002 0.5 1
1 2003 1 1
2 2001 0.25 1
2 2002 0.5 1
2 2003 1 1
Rスクリプト:
t <- read.table("data.txt")
names(t) <- c('site', 'year', 'count', 'weight')
tm <- glm(count ~ 0 + as.factor(site) + as.factor(year), data = t,
family = "quasipoisson") # also works with family="poisson"
years <- 2001:2003
plot(years, exp(c(0, tail(coef(tm), length(years)-1))), type = "l")
結果として得られる年のインデックスは、「予想」通り、つまり1-2-4
年単位2001-2003
です。
しかし、ポアソンGLMが非整数の数値を取ることはどのように可能ですか?ポアソン分布は常に整数のみです!
family="poisson"
が、あなたの例はポアソンGLMではないことに注意してください、あなたはquasipoisson
家族を使用しているので、とにかく平均と分散の関係にのみ依存するので、ケースでは、非整数の番号をとることについて驚きはないはずです。