将拟合模型应用于数据,得到对数似然

2024-05-16 14:05:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用Python完成以下操作,最好是使用statsmodels包(但是如果您知道另一个包的解决方案,我也很乐意听到它): 我有数据olddata和预测器predictors。我用过

import statsmodels.api as sta 
model = sta.GLM(olddata,predictors,family=sta.families.Binomial())
fitted = model.fit()
loglikelihood = fitted.llf

拟合模型并得到对数似然。现在我想知道,这个拟合模型对新数据集newdata的描述有多好。如果我只是用

^{pr2}$

当然,对于我的新数据,我只会得到一个新权重的拟合模型的对数似然。不过,我想得到的是,在新数据的情况下,旧模型的性能如何。我很高兴,如果有人能告诉我如何做到这一点,而不需要手动计算对数可能性。在

事先非常感谢


Tags: 数据模型importapimodelas对数解决方案
1条回答
网友
1楼 · 发布于 2024-05-16 14:05:02

我不认为有一种方法可以改变模型中的数据,但是对数似然可以用任何参数来评估。在

在本例中,我们可以用新数据创建一个新模型,但是在旧参数估计值处计算model.loglike,类似于

model_new = sta.GLM(newdata, predictors, family=sta.families.Binomial())
llf2 = model_new.loglike(fitted_old.params)

其中fitted_old是旧的估计结果实例。在

这应该与statsmodels master一起工作,但我不记得loglike是什么时候被添加到这种工作方式中的。在

注意,result_instance.llf是估计时的对数似然值,model_instance.loglike是可以在任何params处求值的方法。在

相关问题 更多 >