
R语言对回归模型进行回归诊断
在R语言中,对数据进行回归建模是一件很简单的事情,一个lm()函数就可以对数据进行建模了,但是建模了之后大部分人很可能忽略了一件事情就是,对回归模型进行诊断,判断这个模型到低是否模型的假定;如果不符合假定,模型得到的结果和现实中会有巨大的差距,甚至一些参数的检验因此失效。
因为在对回归模型建模的时候我们使用了最小二乘法对模型参数的估计,什么是最小二乘法,通俗易懂的来说就是使得估计的因变量和样本的离差最小,说白了就是估计出来的值误差最小;但是在使用最小二乘法的前提是有几个假设的。
这里我就引用《R语言实战》的内容了,在我大学中的《计量经济学》这本书讲的更为详细,不过这里主要是介绍使用R语言对模型进行回归诊断,所以我们就不说太详细了;
假定
正态性:对于固定的自变量值,因变量值成正态分布,也就是说因变量的是服从正态分布的
独立性:Yi值之间相互独立,也就是说Yi之间不存在自相关
线性:因变量和自变量是线性相关的,如果是非线性相关的话就不可以了
同方差:因变量的方法不随着自变量的水平还不同而变化,也可称之为同方差
为了方便大家使用和对照,这里就使用书上的例子给大家介绍了,在系统自带的安装包中women数据集,我们就想通过身高来预测一下体重;在做回归诊断之前我们得先建模;
首先我们先看一下数据是长什么样子的,因为我们不能盲目的拿到数据后建模,一般稍微规范的点流程是先观察数据的分布情况,判断线性相关系数,然后在考虑是否建立回归模型,然后在进行回归诊断;
R代码如下:
data(‘women’)
women
结果如下
初步观察数据大概告诉我们体重就是跟随着身高增长而增长的,再通过画一下散点图观察。
R代码如下
plot(women)
然后我们在判断一下各个变量之间的线性相关系数,然后再考虑要不要建模
R代码如下
cor(women)
结果如下
从相关系数的结果上看,身高和体重的相关程度高达0.9954,可以认为是完全有关系的。
根据以上的判断我们认为可以建立模型去预测了,这时候我们使用LM()函数去建模,并通过summary函数去得到完整的结果。
R代码如下
model <- lm(weight~height,data=women)
summary(model)
出现这个问号原因是由于电脑字符集问题;稍微解读一下这个结果,RESIDUALS是残差的五分位数,不知道五分位的可以百度一下,这里不多说,下面的结果height的回归系数是3.45,标准差是0.09114,T值为37.85,P值为1.09e-14,并显著通过假设检验,残差的标准差为1.525,可决系数为0.991,认为自变量可以解释总体方差的99.1%,调整后的可决系数为0.9903,这是剔除掉自变量的个数后的可决系数,这个比较有可比性,一般我都看这个调整后的可决系数。结果就解读那么多,因此得到的结果就是
上面只是借用了一个小小例子来讲解了一下R语言做回归模型的过程,接下来我们将一下如何进行回归诊断,还是原来的那个模型,因为使用LM函数中会有一些对结果评价的内容,因此我们用PLOT函数将画出来;
R代码如下
par(mfrow=c(2,2))
plot(model)
结果如下
左上:代表的残差值和拟合值的拟合图,如果模型的因变量和自变量是线性相关的话,残差值和拟合值是没有任何关系的,他们的分布应该是也是在0左右随机分布,但是从结果上看,是一个曲线关系,这就有可能需要我们家一项非线性项进去了
右上:代表正态QQ图,说白了就是标准化后的残差分布图,如果满足正态假定,那么点应该都在45度的直线上,若不是就违反了正态性假
左下:位置尺度图,主要是检验是否同方差的假设,如果是同方差,周围的点应该随机分布
右下:主要是影响点的分析,叫残差与杠杆图,鉴别离群值和高杠杆值和强影响点,说白了就是对模型影响大的点
根据左上的图分布我们可以知道加个非线性项,R语言实战里面是加二次项,这里我取对数,主要是体现理解
R代码如下
model1 <- lm(weight~height+log(height),data=women)
plot(model1)
summary(model1)
结果如下
诊断图
模型拟合结果图
综合起来我们新模型貌似更优了;我就介绍到这里,具体大家可以看书籍
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
R 语言:数据科学与科研领域的核心工具及优势解析 一、引言 在数据驱动决策的时代,无论是科研人员验证实验假设(如前文中的 T ...
2025-09-08T 检验在假设检验中的应用与实践 一、引言 在科研数据分析、医学实验验证、经济指标对比等领域,常常需要判断 “样本间的差异是 ...
2025-09-08在商业竞争日益激烈的当下,“用数据说话” 已从企业的 “加分项” 变为 “生存必需”。然而,零散的数据分析无法持续为业务赋能 ...
2025-09-08随机森林算法的核心特点:原理、优势与应用解析 在机器学习领域,随机森林(Random Forest)作为集成学习(Ensemble Learning) ...
2025-09-05Excel 区域名定义:从基础到进阶的高效应用指南 在 Excel 数据处理中,频繁引用单元格区域(如A2:A100、B3:D20)不仅容易出错, ...
2025-09-05CDA 数据分析师:以六大分析方法构建数据驱动业务的核心能力 在数据驱动决策成为企业共识的当下,CDA(Certified Data Analyst) ...
2025-09-05SQL 日期截取:从基础方法到业务实战的全维度解析 在数据处理与业务分析中,日期数据是连接 “业务行为” 与 “时间维度” 的核 ...
2025-09-04在卷积神经网络(CNN)的发展历程中,解决 “梯度消失”“特征复用不足”“模型参数冗余” 一直是核心命题。2017 年提出的密集连 ...
2025-09-04CDA 数据分析师:驾驭数据范式,释放数据价值 在数字化转型浪潮席卷全球的当下,数据已成为企业核心生产要素。而 CDA(Certified ...
2025-09-04K-Means 聚类:无监督学习中数据分群的核心算法 在数据分析领域,当我们面对海量无标签数据(如用户行为记录、商品属性数据、图 ...
2025-09-03特征值、特征向量与主成分:数据降维背后的线性代数逻辑 在机器学习、数据分析与信号处理领域,“降维” 是破解高维数据复杂性的 ...
2025-09-03CDA 数据分析师与数据分析:解锁数据价值的关键 在数字经济高速发展的今天,数据已成为企业核心资产与社会发展的重要驱动力。无 ...
2025-09-03解析 loss.backward ():深度学习中梯度汇总与同步的自动触发核心 在深度学习模型训练流程中,loss.backward()是连接 “前向计算 ...
2025-09-02要解答 “画 K-S 图时横轴是等距还是等频” 的问题,需先明确 K-S 图的核心用途(检验样本分布与理论分布的一致性),再结合横轴 ...
2025-09-02CDA 数据分析师:助力企业破解数据需求与数据分析需求难题 在数字化浪潮席卷全球的当下,数据已成为企业核心战略资产。无论是市 ...
2025-09-02Power BI 度量值实战:基于每月收入与税金占比计算累计税金分摊金额 在企业财务分析中,税金分摊是成本核算与利润统计的核心环节 ...
2025-09-01巧用 ALTER TABLE rent ADD INDEX:租房系统数据库性能优化实践 在租房管理系统中,rent表是核心业务表之一,通常存储租赁订单信 ...
2025-09-01CDA 数据分析师:企业数字化转型的核心引擎 —— 从能力落地到价值跃迁 当数字化转型从 “选择题” 变为企业生存的 “必答题”, ...
2025-09-01数据清洗工具全景指南:从入门到进阶的实操路径 在数据驱动决策的链条中,“数据清洗” 是决定后续分析与建模有效性的 “第一道 ...
2025-08-29机器学习中的参数优化:以预测结果为核心的闭环调优路径 在机器学习模型落地中,“参数” 是连接 “数据” 与 “预测结果” 的关 ...
2025-08-29