StatsModels OLS回归中公式的交互作用:和*术语之间的区别

Posted

技术标签:

【中文标题】StatsModels OLS回归中公式的交互作用:和*术语之间的区别【英文标题】:Difference between the interaction : and * term for formulas in StatsModels OLS regression 【发布时间】:2016-01-08 02:25:38 【问题描述】:

您好,我正在学习 Statsmodel,但无法弄清楚 StatsModels OLS 回归中公式的 : 和 *(交互项)之间的区别。你能给我一个提示来解决这个问题吗?

谢谢!

文档: http://statsmodels.sourceforge.net/devel/example_formulas.html

【问题讨论】:

最完整的解释在 statsmodels 使用的 patsy 文档patsy.readthedocs.org/en/latest/formulas.html 中。这个***.com/questions/23672466/…也对:*的区别做了一些解释。 【参考方案1】:

":" 将给出一个回归没有关卡本身。只是你提到的互动。

“*”将给出一个回归关卡本身+您提到的交互。

例如

一个GLMmodel = glm("y ~ a: b" , data = df)

您将只有一个自变量,即“a”乘以“b”的结果

bGLMmodel = glm("y ~ a * b" , data = df)

您将有 3 个自变量,它们是“a”乘以“b”的结果 + "a" 本身 + "b" 本身

【讨论】:

【参考方案2】:

使用A*B 实际上只是A + B + A:B 的简写

A:B 指定交互本身。这实际上是两个变量的乘积。因此,仅使用该术语拟合模型几乎没有意义,因此我们通常也拟合主效应 AB。由于这是一种常见的模式,因此在许多统计软件包/平台中都使用简写符号 A*B

【讨论】:

以上是关于StatsModels OLS回归中公式的交互作用:和*术语之间的区别的主要内容,如果未能解决你的问题,请参考以下文章

超详细多元线性回归模型statsmodels_ols

超详细多元线性回归模型statsmodels_ols

使用 statsmodels 忽略多个 OLS 回归中的缺失值

Statsmodels - 线性回归模型 (OLS) 中系数趋势显着性的 Wald 检验

Python:多元线性回归:statsmodels.formula.api.ols()

为啥 `sklearn` 和 `statsmodels` 的 OLS 回归实现给出不同的 R^2?