Python中二项式数据的逻辑回归

机器算法验证 回归 物流 Python 统计模型
2022-03-07 22:11:18

这可能是微不足道的,但我无法弄清楚。我想拟合一个逻辑回归模型,其中我的因变量不是伯努利变量,而是二项式计数。即,对于每个,我有,成功次数和,试验次数。这完全等同于伯努利案例,就好像我们观察了这些试验,所以原则上我可以在我将我的数据解开为伯努利观察后使用例如 statsmodels 逻辑回归。有没有更简单的方法?Xisinini

2个回答

statsmodel包具有可用于此类问题的 glm() 函数请参见下面的示例:

import statsmodels.api as sm

glm_binom = sm.GLM(data.endog, data.exog, family=sm.families.Binomial())

可以在以下链接中找到更多详细信息。请注意,二项式系列模型接受具有两列的二维数组。每个观察结果都应该是[成功,失败]。在上面我从下面提供的链接中获取的示例中,data.endog对应于一个二维数组(成功:NABOVE,失败:NBELOW)。

相关文档:https ://www.statsmodels.org/stable/examples/notebooks/generated/glm.html

或者使用 R 样式公式

import statsmodels.api as sm
import statsmodels.formula.api as smf

mod = smf.glm('successes + failures ~ X1 + X2', family=sm.families.Binomial(), data=df).fit()
mod.summary()
```