Jestem naprawdę oszołomiony faktem, że Poisson GLM akceptuje liczby niecałkowite! Popatrz:
Dane (treść 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
Skrypt 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")
Wynikowy wskaźnik roku jest „oczekiwany”, tj. 1-2-4
W latach 2001-2003
.
Ale jak to możliwe, że Poisson GLM przyjmuje liczby niecałkowite? Rozkład Poissona zawsze był liczbą całkowitą!
family="poisson"
, ale pamiętaj, że twój przykład nie jest Poisson GLM, ponieważ korzystasz z quasipoisson
rodziny, która i tak zależy tylko od relacji między średnią a wariancją, więc w tym W takim przypadku nie powinno być zaskoczenia przy przyjmowaniu liczb niecałkowitych.