我正在使用 sci-kit learn 通过 Tweedie 链接函数来估计 GLM 的 p 值。
首先,我使用 statsmodels 估计 p 值,以查看我应该匹配的值。这是 statsmodels 的结果:
然后,我在 sci-kit learn 中创建相同的模型并尝试估计 p 值:
这些 p 值与统计模型相差甚远。我预计会有一些差异,因为系数并不完全匹配(但通常非常接近),但 p 值之间的差异相当大。
我相信错误在于我的方差-协方差矩阵的计算方式(上面屏幕截图中的 vcov)。您知道加权 GLM 的方差-协方差矩阵估计应该是什么样子吗?
我正在尝试估计 sklearn 中 TweedieRegressor 的 p 值。我预计我的估计 p 值与带有 Tweedie 链接函数的 statsmodel GLM 的 p 值相匹配。
如果没有太多数据、代码或分析目的的细节,很难说清楚。我看了你的屏幕截图并尝试回答。
首先我总结一下我对屏幕截图的解读: 第一个屏幕截图似乎使用了 Python 中的 Statsmodel 包。第二个屏幕截图显示了来自 sklearn 线性模型包 的 TweedieRegressor 的结果 第三个屏幕截图似乎使用正态分布来计算在 scipy 的 stats 包上绘制的 Z 分数。
我不是 Statsmodel 和 sklearn 的 TweeedieRegressor 方面的专家。但根据我的经验,不同的软件包由于计算方法和参数不同而得出不同的结果并不罕见。到目前为止,我还没有找到如何使用 TweedieRegressor 估计系数和 p 值的简单方法。我建议您使用 R。它更容易,并且有很多有用的教程。我用谷歌搜索了“R GLM” - 这里只是前两个链接
Statmethods 和 GLM 上的 ETH 帮助页面
随着 GLM 放宽正态分布的假设,我不确定正态分布的 z 分数计算对您有何帮助。 TweedieRegressor 用于非正态分布的计数数据。如果您的问题更多的是统计性质,我建议您将其发布在
crossvalidated上。