通过MCP连接 →

输入计算

Enter one pair per line, e.g. 1, 2. Comma or space separated. Blank/invalid lines are ignored.

数学公式

数学公式: 线性回归(最小二乘法)计算器

广告

结果

拟合回归直线
y = 2.2 + 0.6 x
Strong correlation
斜率 B 0.6
截距 A 2.2
相关系数 r 0.7745966692
数据点个数 n 5
x 的均值(xBar) 3
y 的均值(yBar) 4
Sxx 10
Syy 6
Sxy 6

什么是线性回归(最小二乘法)计算器?

这个工具采用普通最小二乘法(OLS),为一组 (x, y) 数据点拟合出最佳直线 \(y = A + B\cdot x\)。它会返回斜率 B、截距 A、x 与 y 的均值、各项平方和、拟合方程,以及皮尔逊相关系数 r——并附带一句话说明,帮你快速判断这种相关性到底有多强。

散点图中的最佳拟合直线使到各点的垂直距离最小化
最小二乘直线拟合散点 (x, y) 的趋势。

如何使用

在数据框里每行输入一对 (x, y),中间用逗号或空格隔开,例如 1, 2。空行、不完整的行以及非数字的单元格都会被自动忽略。要确定一条直线,至少需要两对有效数据。再选择想显示的有效数字位数(这只影响显示格式,不影响计算结果),即可读出斜率、截距和 r。

公式详解

设有 n 对有效数据,先算出均值 \(\bar{x} = \sum x_i / n\) 与 \(\bar{y} = \sum y_i / n\)。再计算各项平方和与交叉乘积和:\(S_{xx} = \sum x_i^2 - n\cdot\bar{x}^2\),\(S_{yy} = \sum y_i^2 - n\cdot\bar{y}^2\),\(S_{xy} = \sum x_i y_i - n\cdot\bar{x}\cdot\bar{y}\)。于是斜率 \(B = S_{xy}/S_{xx}\),截距 \(A = \bar{y} - B\cdot\bar{x}\),相关系数 \(r = S_{xy} / (\sqrt{S_{xx}} \cdot \sqrt{S_{yy}})\)。如果所有 x 值都相同(\(S_{xx} = 0\)),就无法拟合出一条非垂直的直线;如果 \(S_{yy} = 0\),r 没有定义,结果按 0 处理。

Advertisement
显示数据点与回归直线之间垂直残差线段的示意图
最小二乘法使垂直残差的平方和最小化。

实例演算

数据:(1,2)、(2,4)、(3,5)、(4,4)、(5,5),n = 5。Σx = 15,Σy = 20 → \(\bar{x} = 3\),\(\bar{y} = 4\)。Σx² = 55 → \(S_{xx} = 55 - 45 = 10\)。Σy² = 86 → \(S_{yy} = 86 - 80 = 6\)。Σxy = 66 → \(S_{xy} = 66 - 60 = 6\)。斜率 \(B = 6/10 = 0.6\),截距 \(A = 4 - 0.6\cdot 3 = 2.2\),相关系数 \(r = 6/\sqrt{60} \approx 0.7746\)(强相关)。拟合直线:$$y = 2.2 + 0.6\cdot x$$

常见问题

r 代表什么? r 是皮尔逊相关系数,取值范围在 −1 到 +1 之间。越接近 ±1,说明线性关系越强;越接近 0,说明几乎没有线性关系。可参考以下经验标准:\(|r| > 0.7\) 为强相关,0.4–0.7 为中等相关,0.2–0.4 为弱相关,低于 0.2 则基本无相关。

如果我的数据点都在一条竖线上怎么办? 如果每个 x 都一样,\(S_{xx} = 0\),就无法拟合最小二乘直线——计算器会提示错误。

调整显示位数会改变结果吗? 不会。它只控制显示多少位有效数字;回归运算始终以完整精度进行。

最后更新: