我正在尝试使用Python的statsmodels包进行负二项回归。使用GLM例程即Statsmodels - 当GLM确实收敛时,负二项不会收敛
model = smf.glm(formula="Sales_Focus_2016 ~ Sales_Focus_2015 + A_Calls + A_Ed", data=df, family=sm.families.NegativeBinomial()).fit()
model.summary()
然而,GLM例程不估计α,色散项当模型估计细。我试图直接使用Negative Binomial例程(估计alpha),即
nb = smf.negativebinomial(formula="Sales_Focus_2016 ~ Sales_Focus_2015 + A_Calls + A_Ed", data=df).fit()
nb.summary()
但是这不会收敛。相反,我得到的消息:
Warning: Desired error not necessarily achieved due to precision loss.
Current function value: nan
Iterations: 0
Function evaluations: 1
Gradient evaluations: 1
我的问题是:
执行两个程序使用的估计方法的不同? 有没有办法使smf.NegativeBinomial例程使用与GLM例程相同的估计方法?
太棒了!我将进一步调查 –
看起来好像'discrete.NegativeBimonial'例程没有'method'参数 –
这是'fit'方法中的一个选项,fit(start_params = None,method ='bfgs')。 ..)'。它缺少文档字符串,但这与泊松和其他离散模型相同。 – user333700