利用EXCEL函数LINEST进行统计学中的回归分析

文章来源:实战统计学

作者:梁斌炜

本文介绍统计学中的一元和多元线性回归,并通过EXCEL自带的统计函数LINEST、INDEX进行手工计算,再通过EXCEL数据分析工具包进行自动计算。

由于很多复杂的EXCEL自动化程序,需要用到自动化计算,EXCEL数据分析工具并不适用自动计算,反而EXCEL统计函数是很容易实现批量自动计算。

所以本文重点介绍EXCEL统计函数的使用。

一、统计学上的线性回归原理


回归是研究一个随机变量y对另一个(x)或一组(x1,x2,…,xn)变量的相依关系的统计分析方法。其中y又叫因变量,x叫自变量。

简单的记忆方法:x是自身可以变动的,y是因为x的变化而变化的,就不会把自变量和因变量的意义搞乱。

线性回归是自变量与因变量之间是线性关系的回归。

一般来说,因变量只有一个,自变量会有一个或多个。下面就按因变量的数量及类别为分:一元线性回归、多元线性回归。


二、一元线性回归


一元线性回归是指一个因变量y只与一个自变量x有相关关系,通过公式可以表示为如下图:

其中a称为斜率,b称为截距。

它的意思是当x增减一个单位时,y会同样增减a个单位的x,如a=2时,x增加一个单位,y就增加2个单位x。

通过EXCEL统计函数LINEST来实现一元线性回归分析,在EXCEL的A1到B10输入如下数据:

xy
1.1200
1.9245
2.5367
4400
4.5550
5540
5.9667
7770
1210

使用LINEST线性回归函数进行手工计算。

LINEST函数可通过使用最小二乘法计算与现有数据最佳拟合的直线,来计算某直线的统计值,然后返回描述此直线的数组。

也可以将 LINEST 与其他函数结合使用来计算未知参数中其他类型的线性模型的统计值,包括多项式、对数、指数和幂级数。因为此函数返回数值数组,所以必须以数组公式的形式输入。

三、LINEST语法

LINEST(known_y’s, [known_x’s], [const], [stats])

  1. Known_y’s 必需。关系表达式 y = mx + b 中已知的 y 值集合。如果 known_y’s 对应的单元格区域在单独一列中,则 known_x’s 的每一列被视为一个独立的变量。如果 known_y’s 对应的单元格区域在单独一行中,则 known_x’s 的每一行被视为一个独立的变量。

  2. Known_x’s 可选。关系表达式 y = mx + b 中已知的 x 值集合。known_x’s 对应的单元格区域可以包含一组或多组变量。如果仅使用一个变量,那么只要 known_y’s 和 known_x’s 具有相同的维数,则它们可以是任何形状的区域。如果使用多个变量,则 known_y’s 必须为向量(即必须为一行或一列)。如果省略 known_x’s,则假设该数组为 {1,2,3,…}, 其大小与 known_y’s 相同。

  3. const 可选。一个逻辑值,用于指定是否将常量 b 强制设为 0。如果 const 为 TRUE 或被省略,b 将按通常方式计算。如果 const 为 FALSE,b 将被设为 0,并同时调整 m 值使 y = mx。

  4. stats 可选。一个逻辑值,用于指定是否返回附加回归统计值。如果 stats 为 TRUE,则 LINEST 函数返回附加回归统计值,这时返回的数组为 {mn,mn-1,…,m1,b;sen,sen-1,…,se1,seb;r2,sey;F,df;ssreg,ssresid}。如果 stats 为 FALSE 或被省略,LINEST 函数只返回系数 m 和常量 b。

附加回归统计值如下:

统计值说明
se1,se2,,sen系数 m1,m2,…,mn 的标准误差值。
seb常量 b 的标准误差值(当 const 为 FALSE 时,seb = #N/A)。
r2判定系数。y 的估计值与实际值之比,范围在 0 到 1 之间。如果为 1,则样本有很好的相关性,y 的估计值与实际值之间没有差别。相反,如果判定系数为 0,则回归公式不能用来预测 y 值。
seyY 估计值的标准误差。
FF 统计或 F 观察值。使用 F 统计可以判断因变量和自变量之间是否偶尔发生过可观察到的关系。
df自由度。用于在统计表上查找 F 临界值。将从表中查得的值与 LINEST 函数返回的 F 统计值进行比较可确定模型的置信区间。有关如何计算 df 的信息,请参阅本主题下文中的“说明”。
ssreg回归平方和。
ssresid残差平方和。

下面的图示显示了附加回归统计值返回的顺序。

在任意单元格中输入=LINEST(B2:B10,A2:A10,TRUE,TRUE),计算得出来的结果为94.33。Linest函数直接计算,返回的是第一个自变量的系数,LINEST返回的是一个数组,即上述的图表。

如果要通过EXCEL数组来实现这种功能。选定A14:B18,在EXCEL地址栏输入=LINEST(B2:B10,A2:A10,TRUE,TRUE),然后同时按CTRL+SHIFT+ENTER,返回一个表格,表格中的每个单元格的公式显示为:{=LINEST(B2:B10,A2:A10,TRUE,TRUE)}

94.3493.92
6.2025.89
0.9737.62
231.787
328,061.719,907.85

对应上表及上述的图,解释上表的各个参数的意义。

  • 94.34就是x的系数a,

  • 93.92为截距b,

  • 6.2为x的系数a的标准误差值,

  • 25.89为截距(常量)b的标准误差值,

  • 0.97为相关系数,

  • 37.62为y估计值的标准误差,

  • 231.78为F统计值

  • 7为自由度,

  • 328061.71为回归平方和,

  • 9907.85为残差平方和。

上述返回的统计值,最常用的是自变量的系数a和常量b,如果在EXCEL自动化程序中,很少会用上述的返回一个表格的方式,因为LINEST返回的是一个数组,可以通过index函数取得数组中的每一个值。

x的系数a可以在任意单元格式输入=INDEX(LINEST(B2:B10,A2:A10,TRUE,TRUE),1,1),截距b可以在任意单元格式输入=INDEX(LINEST(B2:B10,A2:A10,TRUE,TRUE),1,2),index函数第一个参数是指定一个数组,第二和第三个参数是指定返回的行列位置。

所以上述的一元线性回归的拟合直线函数为y=94.34x+93.92,相关系数为0.97。

四、多元线性回归


多元线性回归是指一个因变量y只与多个自变量x有线性相关关系,通过公式可以表示为如下图:

a为每个自变量对因变量y的影响因素,我们以二元线性回归为例,用EXCEL函数LINEST进行分析。数据如下,填充在EXCEL的A1:C10中。

x1x2y
41.1200
71.9245
112.5367
144400
194.5550
225540
225.9667
257770
51210

选定A14:C18,在地址栏中输入=LINEST(C2:C10,A2:B10,TRUE,TRUE),按CTRL+SHIFT+ENTER,返回一个表格,表格中的每个单元格的公式显示为:{=LINEST(C2:C10,A2:B10,TRUE,TRUE)},如下表:

69.176.8887.37
34.059.1428.11
0.973238.84#N/A
109.006.00#N/A
328,916.509,053.05#N/A

此表格和一元线性回归的表格一样,只是多了一列,因为多了一个自变量。多出一列的内容是另一个自变量的系数和它的标准误差值。同样可以通过用INDEX函数取得数据的每一个值。根据上表可以得到拟合的线性回归函数y=69.17×1+6.88×2+87.37

五、用EXCEL数据分析工具进行回归分析


接下来通过EXCEL数据分析工具实现上述一元线性回归分析的计算,并可以验证上述的计算过程。如果你的EXCEL中找不到数据分析,请先为EXCEL添加数据分析工具的加载宏。

  • 选中A1:B10,打开数据分析,选中“回归”后,点击“确定”按钮。

  • 按下图填写好自变量X、因变量Y的区域A1:A10,B1:B10,选择“标志”,意思是说表格中包括有表头字段,填写输出区域A26,点击“确定”后即可。

  • 结果如下,可以清晰的看到用LINEST计算出来的结果与数据分析工具分析得到的结果是一样的。

下载LINEST回归分析EXCEL例子文件

http://www.statr.cn/wp-content/uploads/2012/07/%E7%BA%BF%E6%80%A7%E5%9B%9E%E5%BD%92.xls

近期推荐阅读:
【1】整理了我开始分享学习笔记到现在超过250篇优质文章,涵盖数据分析、爬虫、机器学习等方面,别再说不知道该从哪开始,实战哪里找了【2】【终篇】Pandas中文官方文档:基础用法6(含1-5)如果你觉得文章不错的话,分享、收藏、在看、留言666是对老表的最大支持。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/28237.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linear Regression 线性回归

Linear Regression 线性回归 问题描述构建模型损失函数(Loss Function)梯度下降(Gradient Descent)Learning Rate的选择求取损失函数最小值正则项总结代码实现一次模型二次模型二次模型 Adamgrad五次模型五次模型 (With Regulariz…

回归分析beta值的标准_线性回归分析其中“β、 T 、F”分别是什么含义?

展开全部 β也就是beta,代表回归系数,标准化的回归系数代表自变量也就是预测变量和因变量的636f70793231313335323631343130323136353331333366306561相关,为什么要标准化,因为标准化的时候各个自变量以及因变量的单位才能统一&am…

多元统计分析 多元线性回归 python代码实现 简单线性回归

因变量Y(或Y1 , …,Yp )与x1 ,x2 ,…,xm的回归方程: 数据导入与清洗 import pandas as pd import numpy as np import matplotlib.pyplot as plt from sklearn.model_selection import train_test_split from sklearn.linear_model import LinearRegressionpd_data…

线性回归数据分析

进入机器学习阶段后第一次接触线性回归,感觉线性回归其实就是通过有限的离散型数据,找到一条直线,使得尽可能多的离散点,分布在线附近的区域(理想状态是所有的点都在线上,但是一般是无法满足的)…

多元线性回归方差分析表理解

1.单因素一元方差分析的方法和案例: 例子: 案例的代码: X[533 580 525 600 570 650 500; %因数I [A,F]实验组CK标准 565 600 500 615 575 661 510; 525 575 510 590 565 643 513]; group{‘A’,‘B’,‘C’,‘D’,‘E’,‘F’,‘CK’}; [p…

[转] R 逐步回归分析 AIC信息统计量

由于原作者写得太好了,所以直接转载的,不得不佩服 逐步回归分析是以AIC信息统计量为准则,通过选择最小的AIC信息统计量,来达到删除或增加变量的目的。 R语言中用于逐步回归分析的函数 step() drop1() add1() add1()函数…

数据分析02-线性回归

可分为线性回归分析和非线性回归分析。如果在回归分析中,只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示,这种回归分析称为一元线性回归分析。如果回归分析中包括两个或两个以上的自变量,且因变量和自变量之间是…

线性回归t检验

原理 数据 以下是部分数据展示,蒸发为因变量,其它为自变量,求自变量与因变量相关系数及t值。 年份蒸发湿度温度降雨1990848.3672.4914.60839.261991810.6673.4913.601348.761992914.2669.4914.00626.761993665.6674.4913.601212.061994848…

多元线性回归中的F-test和T-test

1 举个例子 模型输出的p值检验为F检验 模型输入的p值检验为T检验 原理: 后续补充 先上代码2: import pandas as pd import numpy as np import matplotlib.pyplot as plt from sklearn.linear_model import LinearRegression

多元线性回归超详细详解(一步一步手推公式)

上一篇我们详细的讲解了一元一次线性回归算法,今天我们接着上一篇,为大家讲解多元线性回归是怎么一回事。 何为多元?当我们的输入x只有一维属性时,我们称之为一元。就像我们判断人胖瘦,只需了解体重这一个属性&#x…

线性回归模型详解(Linear Regression)

目录 线性与非线性 线性回归 多重共线性 常用的回归模型评估指标 算法优缺点 算法实现 回归分析的主要算法包括: 线性回归(Linear Regression)逻辑回归(Logistic regressions)多项式回归(Polynomial Regression)逐步回归(Step Regress…

数据线性回归分析

目录 一、利用WPS进行线性回归分析 二、利用jupyter编程(不借助第三方库) 对数据进行线性回归分析 1、将数据文件上传(方便后续打开数据文件) 2、添加代码 ​编辑 3 、输出200组数据 4、输出2000组数据 5、利用pandas打开ex…

用ggplot2进行直线回归并添加回归方程和方差分析表

library(ggplot2) #加载ggplot2包 library(dplyr) #加载dplyr包 library(ggpmisc) #加载ggpmisc包mpg %>% ggplot(aes(x displ, y hwy)) geom_point(aes(color drv)) #以drv为分组设置点的颜色geom_smooth(method lm, formula y ~ x) #绘制回归直线stat_poly_eq(aes…

多元线性回归分析(Stata)

目录 一、回归分析的介绍与分类 二、多元线性回归模型的条件 1. 线性理解与内生性问题研究 2. 异方差问题 3. 多重共线性问题 一、回归分析的介绍与分类 回归分析的任务是:通过研究自变量X和因变量Y的关系,尝试去解释Y的形成机制,进而达…

一文轻松看懂线性回归分析的交互作用!

作者:丁点helper 来源:丁点帮你 前几天的文章,我们聚焦在回归分析,今天来看看在回归分析中常常要研究的一类难点问题——交互作用的探究。 交互(interaction),字面上不太好理解,但…

多元线性回归模型及stata实现:总论

多元线性回归模型及stata实现:总论 一、模型 Yβ0β1X1β2X2⋯βnXne Y: Dependent variable(因变量、应变量、反应变量、响应变量、被解释变量等)X1、X2⋯Xn:Independent variable(自变量、解释变量、控制变量&…

Linux 系统使用 git 提交代码-- git 的安装及使用(简明教学指南)

序 2023/02/09 晚 鉴于本篇文章收藏量比较多,那就给大家分享点在实际工作中使用频率最高的工作流命令吧。 场景如下(多人共同开发一个项目):我叫小明,参与了一个名为 chatGPT 的项目,这个 AI 最近很火,就以此作为例…

慕课前端售1299元的面试题【第二阶段】汇总 day05

上一篇链接 如果有看不懂的,别硬看,直接chatgpt,让它回答。 - 我的博客需要缩宽页面观看,图片无法均放,很抱歉。 1. 请说明 Ajax Fetch Axios 三者的区别? 1. 用 XMLHttpRequest 实现 Ajax function aja…

Javaweb复习之HTTPTomcatServelet

1.Web概述 1.1 Web和JavaWeb的概念 Web是全球广域网,也称为万维网(www),能够通过浏览器访问的网站。 JavaWeb就是用Java技术来解决相关web互联网领域的技术栈 1.2 JavaWeb技术栈 B/S 架构:Browser/Server,浏览器/服务器 架构模…

DDD领域驱动设计实战-DDD微服务代码结构

更多内容关注微信公众号:fullstack888 DDD并没有给出标准的代码模型,不同的人可能会有不同理解。按DDD分层架构的分层职责定义,在代码模型里分别为用户接口层、应用层、领域层和基础层,建立了 interfaces、application、domain 和…