我的任务是开发一个回归模型,观察不同项目的学生入学情况。这是一个非常好的、干净的数据集,其中注册计数很好地遵循泊松分布。我在 R 中拟合了一个模型(同时使用 GLM 和零膨胀泊松。)结果残差似乎是合理的。
但是,我随后被指示将学生人数更改为“比率”,计算为学生/学校_人口(每所学校都有自己的人口。))这现在不再是计数变量,而是介于 0 和 1 之间的比例. 这被认为是程序中的“入学比例”。
这个“比率”(学生/人口)不再是泊松,但肯定也不正常。因此,我对适当的分布以及表示它的后续模型有点迷茫。
对数正态分布似乎很适合这个速率参数,但是我有很多 0 值,所以它实际上并不适合。
关于这个新参数的最佳分布形式有什么建议,以及如何在 R 中对其进行建模?
谢谢!
最佳答案
正如评论中所建议的,您可以保留泊松模型并使用偏移量进行操作:
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=...)
后一种形式有时更方便,尽管使用不那么广泛。
请注意,通常从泊松切换到二项式会改变
从 log 到 logit 的链接函数,尽管您可以使用
family=binomial(link="log"))
若你宁可。使用 Poisson + offset 组合可能更容易建模零通胀(我不确定
pscl
包,ZIP 的最常见方法,是否处理偏移量,但我认为确实如此),这将更普遍与零膨胀二项式模型相比。我想
glmmADMB
会做一个零膨胀二项式模型,但我还没有测试过。
关于R 中速率变量的回归,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16046726/