R 中的公式 y ~ x + 0 实际计算的是什么?

机器算法验证 多重回归 广义线性模型 截距
2022-03-07 13:43:27

formula在 R 中使用设置为y ~ x + 0而不是 进行线性回归之间的统计差异是什么y ~ x我如何解释这两个不同的结果?

2个回答

+0(或-1)添加到 R 中的模型公式(例如 in lm())会抑制截距。这通常被认为是一件坏事;看:

估计斜率的计算方式不同,具体取决于是否也估计截距,即:

(with intercept)β^1=xiyi(xi)(yi)Nxi2(xi)2N(without intercept)β^1=xiyixi2

由于分子和分母中要减去的量(“减数”)不一定0,当截距被抑制时,斜率的估计是有偏差的。

价值为R2计算方式也不同;看:

以下是基本公式:

(with intercept)R2=1(yiy^i)2(yiy¯)2(without intercept)R2=1(yiy^i)2yi2

这取决于上下文(当然),lm(...)在 R 中的命令中它将抑制拦截。也就是说,您通过原点进行回归。

请注意,大多数关于回归主题的教科书都会告诉您强制截距(任何值)是一个坏主意。

x 的解释没有改变,但值(比较有和没有截距)会改变,有时非常显着。