5

我的任务是开发一个回归模型来观察不同项目的学生注册情况。这是一个非常好的、干净的数据集,其中注册数很好地遵循泊松分布。我在 R 中拟合了一个模型(同时使用 GLM 和零膨胀泊松。)得到的残差似乎是合理的。

但是,然后我被指示将学生人数更改为“率”,计算为学生/学校人口(每所学校都有自己的人口。))现在这不再是计数变量,而是介于 0 和 1 之间的比例. 这被认为是一个程序中的“入学比例”。

这个“比率”(学生/人口)不再是泊松,但也肯定不正常。所以,我对适当的分布以及表示它的后续模型有点迷茫。

对数正态分布似乎很适合这个速率参数,但是我有很多 0 值,所以它实际上并不适合。

关于这个新参数的最佳分布形式的任何建议,以及如何在 R 中对其建模?

谢谢!

4

1 回答 1

6

正如评论中所建议的,您可以保留泊松模型并使用偏移量进行操作:

glm(response~predictor1+predictor2+predictor3+ ... + offset(log(population),
     family=poisson,data=...)

或者您可以使用二项式 GLM,或者

glm(cbind(response,pop_size-response) ~ predictor1 + ... , family=binomial,
        data=...)

或者

glm(response/pop_size ~ predictor1 + ... , family=binomial,
        weights=pop_size,
        data=...)

后一种形式有时更方便,尽管使用较少。请注意,通常从 Poisson 切换到二项式会将链接函数从 log 更改为 logit,尽管您可以根据需要使用family=binomial(link="log"))

使用 Poisson + offset 组合来模拟零通胀可能更容易(我不确定pscl最常见的 ZIP 方法包是否可以处理偏移,但我认为可以),这将比零更常见-膨胀的二项式模型。

我认为glmmADMB会做一个零膨胀的二项式模型,但我还没有测试过。

于 2013-04-16T22:44:25.523 回答