在 R 中使用 glm.nb 非常大的 theta 值 - 替代方法?

机器算法验证 r 广义线性模型 过度分散
2022-04-17 02:29:37

在分析环境数据对动物物种活动的影响(后者作为计数数据给出)时,我使用 R. Unfortunatley 中的 MASS 库将负二项式 GLM 与一个预测器拟合,数据集非常小(n = 7至 9)。

在某些情况下,glm.nb 中的 theta 值变得非常大(伴随着警告“达到迭代限制”),这可能表明没有过度离散,泊松 GLM 可能是更好的选择。然而,使用泊松 GLM,在 7 个自由度上的残余偏差例如 150 表明实际上存在过度离散 - 或者我错过了什么?

使用准泊松 GLM 是可行的,但我想保留基于 ML 的度量,例如 AIC 和 Vuong 测试以进行模型比较。非常感谢任何有关替代方法的建议!

1个回答

这并不一定意味着存在过度分散(尽管可能),只是饱和模型可能更适合。如果您只有 7-9 个观察值,则很难准确测试过度离散,除非您有一些值在泊松假设下正好存在。

您可能会考虑的另一个选择是使用泊松模型,但使用预测变量的转换值,而不是原始变量的线性拟合。如果看起来预测变量的较大值是 Y 值偏离更多的地方,您可以尝试使用预测变量的平方值之类的东西,或者如果相反,则可能是预测变量的对数变换。

考虑计数模型中的过度分散总是一个好主意,但它确实给模型带来了复杂性。由于数据点如此之少,您最好的方法可能是使其尽可能简单。