在 Python 中解释线性混合模型结果的截距 - Statsmodel 包

机器算法验证 机器学习 混合模式 Python 推理 统计模型
2022-04-01 00:49:50

使用 python 包 statsmodel 和此链接中的代码:

如果线性混合模型具有 x 组的随机变量。那么为什么什么时候会运行这段代码:

data = sm.datasets.get_rdataset('dietox', 'geepack').data
md = smf.mixedlm("Weight ~ Time", data, groups=data["Pig"])
mdf = md.fit()
print(mdf.summary())

它是否只为截距参数产生一个值?

     Mixed Linear Model Regression Results
========================================================
Model:            MixedLM Dependent Variable: Weight
No. Observations: 861     Method:             REML
No. Groups:       72      Scale:              11.3669
Min. group size:  11      Log-Likelihood:     -2404.7753
Max. group size:  12      Converged:          Yes
Mean group size:  12.0
--------------------------------------------------------
             Coef.  Std.Err.    z    P>|z| [0.025 0.975]
--------------------------------------------------------
Intercept    15.724    0.788  19.952 0.000 14.179 17.268
Time          6.943    0.033 207.939 0.000  6.877  7.008
Group Var    40.394    2.149
========================================================

该表显示有 72 个不同的组(在本例中为猪)。然而该表仅显示一个截距值,即:15.724

我如何解释与“幕后”发生的事情有关的表格?或者换句话说:一个值与其他 72 个截距有何关系?

1个回答

15.724 的截距估计值是全局截距,(72) 个随机截距在其周围变化。随机截距被估计为正态分布的样本,方差为 40.384,均值为零 - 因此需要全局(固定)截距。