课程
Excel 提供了一个很棒的线性回归工具——LINEST()。LINEST() 的优势在于,它使用最小二乘法计算最能拟合您数据的直线的统计量。我也喜欢 LINEST(),因为它还能提供更多模型信息,例如 F 统计量和标准误。
继续阅读,我将向您详细介绍 LINEST(),这样您就能将其用于趋势分析、预测等场景。
Excel LINEST() 在做什么
在尝试示例之前,先从更高层次看一下 LINEST() 的工作原理。
LINEST() 使用最小二乘法进行线性回归,该方法会找到使残差平方和(观测 y 值与回归直线预测值之差的平方)最小的直线。在底层实现中,Excel 的 LINEST() 使用矩阵代数求解正规方程,这源于普通最小二乘(OLS)回归。
回归几乎是分析师或数据科学家必须精通的最重要方法之一。从模型比较、预测到假设检验和因果推断,处处都要用到回归。
Excel LINEST() 的语法
LINEST() 的语法如下:
=LINEST(known_y's, [known_x's], [const], [stats])
-
known_y's:因变量数据值(必需) -
known_x's:自变量数据值(可选) -
const:逻辑值;TRUE为计算截距,FALSE为将截距强制为 0(可选) -
stats:逻辑值;TRUE返回额外的回归统计量,FALSE仅返回斜率/截距(可选)
在回归中使用 Excel LINEST()
现在来看看简单线性回归(一个自变量)和多元线性回归(多个自变量)两种情形。
LINEST() 与简单线性回归
要进行只有一个自变量的简单线性回归,您可以只用 y 值和 x 值调用 LINEST()。简单线性回归的最佳拟合直线由两个参数完全确定:斜率和截距。
=LINEST(B2:B10, A2:A10, TRUE, TRUE)
将可选参数设置为 TRUE 后,LINEST() 会返回多项统计量,如下图所示:
- 每个自变量对应的斜率
- 截距
- 标准误
- R 平方值
- F 统计量与自由度
默认情况下,由于 LINEST() 是数组公式,在进行简单线性回归且 stats 参数为 TRUE 时,会输出一个 2x5 的网格。
我个人喜欢把 LINEST() 包在 TOCOL() 里面,这样输出就是一列了。
只要确保各列顺序正确即可!
如果您需要更多关于如何解读这类输出的帮助,可以看看我们的统计学入门课程。
LINEST() 与多元线性回归
LINEST() 也能处理多个自变量的多元回归分析。只需为 known_x's 提供包含所有变量的区域即可。
=LINEST(C2:C10, A2:B10, TRUE, TRUE)

该示例对 C2:C10 的 y 值与 A、B 两列中的两个自变量计算回归统计量。一个实用的小技巧是保留第二个对应网格,方便准确对齐各项统计量。
想要观看关于如何使用 LINEST() 及其他函数的视频演示,请前往我们的 YouTube 视频Regression in Excel Made Easy。
何时使用 LINEST()
LINEST() 适用于:
- 对销售、金融和科学数据进行趋势分析
- 基于历史数据预测未来数值
- 评估变量之间关系的强度
- 在 Excel 中构建预测模型
一些额外提示
请牢记以下最佳实践:
-
在运行回归前务必检查异常值。因为
LINEST()使用的 OLS 估计量对异常值较为敏感。 -
使用
stats参数以获取完整的回归诊断信息 -
当需要所有统计量时,请将
LINEST()作为数组公式输入 -
将
LINEST()与图表结合使用,以讲述更完整的故事。
排查 Excel LINEST() 错误
如果遇到 LINEST() 报错,请考虑以下思路:
-
known_y's与known_x's的区域不匹配 -
输入区域中包含非数值数据
-
在需要时忘记将公式作为数组输入
结论
如您所见,您可以在 Excel 中将 LINEST() 用于简单线性回归和多元线性回归;同时,正如您也看到的,LINEST() 不仅返回两个参数(斜率和截距),如果您选择查看,还会给出额外的模型统计量。
继续与我们一起学习。马上参加我们的 Data Analysis in Excel 课程或 Data Analysis with Excel Power Tools 技能路径。

我是数据科学编辑,曾为科学期刊发表的研究论文撰稿。我的兴趣领域包括线性代数、统计学、R 等相关主题。