Poisson GLM如何接受非整数?


17

泊松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怎么可能采用非整数?泊松分布始终仅是整数!


2
您能澄清一下您想知道什么吗?拟合算法如何处理非整数?还是为什么R不检查响应是否为整数?或者提供非整数时结果是否有问题?
莫莫

@Momo,是的,所有这些问题都很有趣!
好奇的

2
请修改您的问题以反映这一点。这样,您更有可能获得良好的答案。
Momo 2013年

8
但这并不是真的很重要,也确实如此family="poisson",但是请注意,您的示例不是泊松GLM,因为您使用的是quasipoisson族,它仅取决于均值和方差之间的关系,因此在这种情况下,采用非整数并不奇怪。
亚伦-恢复莫妮卡

1
以下是一些有关为什么这样做有意义的参考。
Dimitriy V. Masterov

Answers:


17

当然,从技术上讲,泊松分布仅定义为整数是正确的。但是,统计建模是一种很好的近似方法(“ 所有模型都是错误的 ”),并且有时将非整数数据视为[近似]泊松是有意义的。

例如,如果您派出两个观察员来记录相同的计数数据,则可能会出现两个观察员并不总是同意计数的情况-一个人可能说某事发生了3次,而另一个人却说发生了4次。很好的是,可以在拟合泊松系数时选择使用3.5,而不必在3和4之间进行选择。

从计算上讲,泊松中的阶乘可能会使与非整数一起使用似乎变得困难,但是对阶乘存在连续的概括。此外,一旦简化表达式就可以对泊松执行最大似然估计甚至不涉及阶乘函数。


15

对于响应,如果假定其期望的对数是预测的线性组合X ë ÿ = EXP β Ť X &它的方差等于它的期望 无功ÿ = Ë ÿ 的回归然后一致性估计系数β:可以通过求解得分方程泊松模型来获得 ñ ΣX ÿ - EXP β Ť X =yx

EYi=expβTxi
VarYi=EYi
β
inxi(yiexpβTxi)=0
当然,一致性并不意味着任何测试或置信区间的有效性。尚未指定可能性。

这是从我们在学校中学到的瞬间方法开始的,并导致了 广义估计方程的方法

@Aaron指出您实际上在代码中使用了拟泊松拟合。这意味着方差与平均值成正比

VarYi=ϕEYi

ϕ

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.