热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

多重线性回归逐步法,多重线性回归结果分析

今天我们就来继续讨论一下,如果残差不满足方差齐性时,应该如何解决?我们在进行残差分析时,可以通过绘制标准化残差和标准化预测值的散点图来进行判断。在这种情况下,因变量的变异程度会随着

今天我们就来继续讨论一下,如果残差不满足方差齐性时,应该如何解决?

一、残差方差齐性判断

残差方差齐性

回顾一下前面介绍过的残差方差齐性,即残差ei的大小不随预测值水平的变化而变化。我们在进行残差分析时,可以通过绘制标准化残差和标准化预测值的散点图来进行判断。若残差满足方差齐性,则标准化残差的散点会在一定区域内,围绕标准化残差ei=0这条直线的上下两侧均匀分布,不随标准化预测值的变化而变化,如图1所示。

图1. 标准化残差散点图(方差齐性)

残差方差不齐

但有时残差不满足方差齐性的假设,其标准化残差散点图显示,残差的变异程度随着变量取值水平的变化而发生变化,如图2(a)显示标准化残差的分布随变量取值的增大而呈现扩散趋势,图2(b)显示标准化残差的分布随变量取值的增大而呈现收敛趋势,说明残差不满足方差齐性的条件。


图2. 标准化残差散点图(方差不齐)

二、加权最mmdxbc乘法

在多重线性回归模型中,我们采用的是普通最mmdxbc乘法(Ordinary Least Square,OLS)来对参数进行估计,即要求每个观测点的实际值与预测值之间的残差平方和最小,对于模型中的每个观测点是同等看待的,残差满足方差齐性的假设。

但是在有些研究问题中,例如调查某种疾病的发病率,以地区为观测单位,很显然地区人数越多,所得到的率就越稳定,变异程度越小,而地区人数越少,所得到的率的变异就越大。在这种情况下,因变量的变异程度会随着自身数值或其他变量的变化而变化,残差不满足方差齐性的条件。此时如果继续采用OLS方法进行模型估计,则拟合结果就会受到变异程度较大的数据的影响,在这种情况下构建的回归模型就会发生偏差,预测精度降低,甚至预测功能失效。

为了解决这一问题,我们可以采用加权最mmdxbc乘法(Weighted Least Squares,WLS)的方法来进行模型估计,即在模型拟合时,根据数据变异程度的大小赋予不同的权重,对于变异程度较小、测量更精确的数据赋予较大的权重,对于变异程度较大、测量不稳定的数据赋予较小的权重,从而使得加权后回归直线的残差平方和最小,保证拟合的模型具有更好的预测价值。

三、SPSS操作

研究问题

某研究人员拟研究PM2.5浓度与癌症发病率之间的关联性,以地区为观测单位,收集了40个地区的癌症发病率(/10万),PM2.5年平均浓度(μg/m3),人口数量(万),地区来源(0=农村,1=城市)等信息。(注:数据为模拟数据,不代表真实情况)

2. 判断残差是否满足方差齐性

参考多重线性回归的SPSS操作步骤,结果显示采用普通最mmdxbc乘法方法拟合的线性回归模型具有统计学意义(P<0.001),决定系数R Square为0.798,PM2.5平均浓度、不同地区来源(District)和不同人口数量对癌症发病率的影响有统计学显著性(P<0.05)。

残差散点图显示,标准化残差的变异程度会随着标准化预测值的增大而增大,呈现扩散趋势,表明残差不满足方差齐性的假设。

3. 权重估计

根据专业知识和经验判断,人口数量(Population)可能为导致残差不满足方差齐性的一个重要因素,下面对人口数量进行权重估计。

(1)选择Analyze → Regression → Weight Estimation,在Weight Estimation对话框中,将Cancer选入Dependent,将District和PM2.5选入Independent(s)中。

(2)将拟加权的变量Population选入Weight Variable中,系统将按照1/(权重变量)的power次幂对每条记录进行加权。

(3)Power range用于定义权重变量的指数,默认为-2~2,步长为0.5,即将拟合指数分为-2、-1.5、-1、-0.5、0、0.5、1、1.5和2一共构建9个方程中,并从中选取效果最佳的一个拟合指数。本例中标准化残差随着标准化预测值的增大而增大,因此Power range为正值,此处设定Power range的范围为0~5,步长为0.5。

(4)点击Option,选择Save best weight as new variable,生成一个新的变量用以保存效果最佳的权重。最后点击Continue回到Weight Estimation主对话框,点击OK完成操作。

(5)结果汇总

Log-Likelihood Values表中输出了在给定步长下每个指数值对应的对数似然值,选取对数似然值最大的一项为最优指数,因此本例中最终确定的最优指数值为3,即权重按照1/population3的函数关系来计算权重。同时系统会在确定最优指数的情况下,自动生成一个名为WGT_1的变量用于保存权重系数。

4. 最mmdxbc乘法操作

(1)选择Analyze → Regression → Linear,在Linear Regression对话框中,将Cancer选入Dependent,将District、PM2.5、Population选入Independent(s)中,将新生成的变量Weight for Cancer from WLS(WGT_1)选入WLS Weight中。

(2)点击Save选项,在Predicted Values和Residuals框下均选择Unstandardized。最后点击Continue回到Linear Regression主对话框,点击OK完成操作。

(3)绘制残差散点图

由于在SPSS中使用WLS模型无法直接绘制加权残差散点图,SPSS会给出相应的警示(如下图所示),因此我们需要按照SPSS提示中提供的计算公式,对加权预测值和加权残差值进行一定的转换,然后再绘制转换后的加权残差散点图。

选择Transform → Compute Variable,利用前几步操作生成的权重值(WGT_1)、加权预测值(PRE_1)和加权残差值(RES_1)来计算生成两个新变量,即转换的加权预测值wgtpred = PRE_1 * sqrt(WGT_1)和转换的加权残差值wgtresid = RES_1 * sqrt(WGT_1)。

然后选择Graphs → Legacy Dialogs → Scatter/Dot → Simple Scatter,将wtgpred选入X Axis,将wtgresid选入Y Axis,点击OK绘制散点图。


5. 结果汇总

(1)结果显示,采用加权最mmdxbc乘法拟合的线性回归模型仍具有统计学意义(P<0.001),决定系数R Square为0.779。由于决定系数计算方法本身的问题,在加权线性回归里会出现一定的偏差,导致加权方法计算得到的R2往往要小于普通最mmdxbc乘法的R2,但这并不代表加权的模型比普通模型的拟合效果差,两者不能简单相比。

(2)模型结果显示,PM2.5平均浓度、不同地区来源(District)和不同人口数对癌症发病率的影响有统计学显著性(P<0.05),且偏回归系数较普通最mmdxbc乘法更为稳健。

(3)转换后的加权残差散点图显示,残差的散点围绕ei=0这条直线的上下两侧均匀分布,不随预测值的变化而变化,说明经过加权校正后,残差已满足方差齐性的条件,达到了加权校正的目的。


推荐阅读
  • PHP-Casbin v3.20.0 已经发布,这是一个使用 PHP 语言开发的轻量级开源访问控制框架,支持多种访问控制模型,包括 ACL、RBAC 和 ABAC。新版本在性能上有了显著的提升。 ... [详细]
  • 本文详细介绍了 Java 网站开发的相关资源和步骤,包括常用网站、开发环境和框架选择。 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • [转]doc,ppt,xls文件格式转PDF格式http:blog.csdn.netlee353086articledetails7920355确实好用。需要注意的是#import ... [详细]
  • POJ 2482 星空中的星星:利用线段树与扫描线算法解决
    在《POJ 2482 星空中的星星》问题中,通过运用线段树和扫描线算法,可以高效地解决星星在窗口内的计数问题。该方法不仅能够快速处理大规模数据,还能确保时间复杂度的最优性,适用于各种复杂的星空模拟场景。 ... [详细]
  • 技术日志:使用 Ruby 爬虫抓取拉勾网职位数据并生成词云分析报告
    技术日志:使用 Ruby 爬虫抓取拉勾网职位数据并生成词云分析报告 ... [详细]
  • iOS snow animation
    CTSnowAnimationView.hCTMyCtripCreatedbyalexon1614.Copyright©2016年ctrip.Allrightsreserved.# ... [详细]
  • 本文介绍了 Python 中的基本数据类型,包括不可变数据类型(数字、字符串、元组)和可变数据类型(列表、字典、集合),并详细解释了每种数据类型的使用方法和常见操作。 ... [详细]
  • packagecom.panchan.tsmese.utils;importjava.lang.reflect.ParameterizedType;importjava.lang. ... [详细]
  • 本文介绍了如何使用Python爬取妙笔阁小说网仙侠系列中所有小说的信息,并将其保存为TXT和CSV格式。主要内容包括如何构造请求头以避免被网站封禁,以及如何利用XPath解析HTML并提取所需信息。 ... [详细]
  • 普通树(每个节点可以有任意数量的子节点)级序遍历 ... [详细]
  • 2020年9月15日,Oracle正式发布了最新的JDK 15版本。本次更新带来了许多新特性,包括隐藏类、EdDSA签名算法、模式匹配、记录类、封闭类和文本块等。 ... [详细]
  • 本文详细介绍了如何使用Python的多进程技术来高效地分块读取超大文件,并将其输出为多个文件。通过这种方式,可以显著提高读取速度和处理效率。 ... [详细]
  • 性能测试中的关键监控指标与深入分析
    在软件性能测试中,关键监控指标的选取至关重要。主要目的包括:1. 评估系统的当前性能,确保其符合预期的性能标准;2. 发现软件性能瓶颈,定位潜在问题;3. 优化系统性能,提高用户体验。通过综合分析这些指标,可以全面了解系统的运行状态,为后续的性能改进提供科学依据。 ... [详细]
  • SSAS入门指南:基础知识与核心概念解析
    ### SSAS入门指南:基础知识与核心概念解析Analysis Services 是一种专为决策支持和商业智能(BI)解决方案设计的数据引擎。该引擎能够为报告和客户端应用提供高效的分析数据,并支持在多维数据模型中构建高性能的分析应用。通过其强大的数据处理能力和灵活的数据建模功能,Analysis Services 成为了现代 BI 系统的重要组成部分。 ... [详细]
author-avatar
小辣椒jie
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有