踏上R语言之旅:解锁数据世界的神秘密码(四)


文章目录

  • 前言
  • 一、多元线性回归
    • 1.多元线性回归模型的建立
    • 2.多元线性回归模型的检验
  • 二、多元线性相关分析
    • 1.矩阵相关分析
    • 2.复相关分析
  • 三、回归变量的选择方法
    • 1.变量选择准则
    • 2.变量选择的常用准则
    • 3.逐步回归分析
  • 总结


前言

回归分析研究的主要对象是客观事物变量间的统计关系。它是建立在对客观事物进行大量实验和观察的基础上,用来寻找隐藏在看起来不确定的现象中的统计规律的统计方法。它与相关分析的主要区别为:
一是在回归分析中,解释变量称为自变量,被解释变量称为因变量,处于被解释的特殊地位;而在相关分析中,并不区分自变量和因变量,各变量处于平等地位。
二是在相关分析中所涉及的变量全是随机变量;而在回归分析中,只有因变量是随机变量,自变量可以是随机变量,也可以是非随机变量。
三是相关分析研究主要是为刻画两类变量间的线性相关的密切程度;而回归分析不仅可以揭示自变量对因变量的影响大小,还可以由回归方程进行预测和控制。


一、多元线性回归

1.多元线性回归模型的建立

1.一般形式:
![](https://img-blog.csdnimg.cn/direct/378e658764c64831a00b57bcd33cf93b.png)
当得到n组数据时,
在这里插入图片描述
2.线性回归模型的基本假设
在这里插入图片描述
3.多元回归参数的最小二乘估计
在这里插入图片描述
在这里插入图片描述
例.财政收入多元分析
在这里插入图片描述

> yX=read.table("clipboard",header=T)
> plot(yX,gap=0)

在这里插入图片描述

> (fm=lm(y~x1+x2+x3+x4,data=yX))#显示多元线性回归模型Call:
lm(formula = y ~ x1 + x2 + x3 + x4, data = yX)Coefficients:
(Intercept)           x1           x2           x3           x4  23.5321088   -0.0033866    1.1641150    0.0002919   -0.0437416 

4.标准化偏回归系数
在这里插入图片描述
标准化偏回归系数:

> coef.sd(fm)#标准化偏回归系数结果
$coef.sdx1            x2            x3            x4 
-0.0174513678  1.0423522972  0.0009628564 -0.0371053994 

2.多元线性回归模型的检验

1.回归方程的假设检验
在这里插入图片描述
在这里插入图片描述
2.回归系数的假设检验

> anova(fm)#多元线性回归模型方差分析
Analysis of Variance TableResponse: yDf Sum Sq Mean Sq    F value    Pr(>F)    
x1         1 694627  694627 89259.0016 < 2.2e-16 ***
x2         1  17803   17803  2287.6286 < 2.2e-16 ***
x3         1     24      24     3.0569    0.0922 .  
x4         1    174     174    22.2954 7.005e-05 ***
Residuals 26    202       8                         
---
Signif. codes:  0***0.001**0.01*0.05 ‘.’ 0.1 ‘ ’ 1

P<0.0001 则本例回归模型有意义
接下来进行参数估计及检验:

> summary(fm)#多元线性回归系数t检验Call:
lm(formula = y ~ x1 + x2 + x3 + x4, data = yX)Residuals:Min      1Q  Median      3Q     Max 
-5.0229 -2.1354  0.3297  1.2639  6.9690 Coefficients:Estimate Std. Error t value Pr(>|t|)    
(Intercept) 23.5321088  4.5990714   5.117 2.47e-05 ***
x1          -0.0033866  0.0080749  -0.419    0.678    
x2           1.1641150  0.0404889  28.751  < 2e-16 ***
x3           0.0002919  0.0085527   0.034    0.973    
x4          -0.0437416  0.0092638  -4.722 7.00e-05 ***
---
Signif. codes:  0***0.001**0.01*0.05 ‘.’ 0.1 ‘ ’ 1Residual standard error: 2.79 on 26 degrees of freedom
Multiple R-squared:  0.9997,    Adjusted R-squared:  0.9997 
F-statistic: 2.289e+04 on 4 and 26 DF,  p-value: < 2.2e-16

由t检验结果可见,偏回归系数b2、b4的P值都小于0.01,可认为解释变量税收x2和经济活动人口x4显著;b1、b3的P值大于0.50,不能否定B1=0、B3=0的假设,可认为国内生产总
值x,和进出口贸易总额x3对财政收人y没有显著的影响。我们可以看到,国内生产总值、经济活动人口所对应的偏回归系数都为负,这与经济现实是不相符的。出现这种结果的可能原因是这些解释变量之间存在高度的共线性

二、多元线性相关分析

在相关分析中,研究较多的是两个变量之间的关系,称为简单相关。当涉及的变量为三个或三个以上时,称为偏相关或复相关。实际上,偏相关(复相关)是对简单相关的一种推广。
在有些情况下,我们只想了解两变量之间有无线性相关关系,并不需要建立它们之间的回归模型,也不需要区分自变量和因变量,这时,就可用较为方便的相关分析方法。

1.矩阵相关分析

计算两两间的相关系数:

> cor(yX)#多元数据相关系数矩阵y        x1        x2        x3        x4
y  1.0000000 0.9871498 0.9994718 0.9912053 0.6956619
x1 0.9871498 1.0000000 0.9907018 0.9867664 0.7818066
x2 0.9994718 0.9907018 1.0000000 0.9917094 0.7154297
x3 0.9912053 0.9867664 0.9917094 1.0000000 0.7073820
x4 0.6956619 0.7818066 0.7154297 0.7073820 1.0000000

给出两两间的矩阵散点图:

pairs(x,…)
x为数值矩阵或数据框

> pairs(yX)#多元数据散点

在这里插入图片描述
假设检验:

> corr.test(yX)#多元数据相关系数检验
corr test: y     x1     x2    x3 x4
y    0.000  0.000  0.000 0.000  0
x1  33.267  0.000  0.000 0.000  0
x2 165.614 39.214  0.000 0.000  0
x3  40.336 32.772 41.560 0.000  0
x4   5.215  6.752  5.514 5.389  0
lower is t value,upper is p value

2.复相关分析

1.复相关系数的计算
在这里插入图片描述
2.决定系数
在这里插入图片描述

> (R2=summary(fm)$r.sq)#显示多元线性回归模型决定系数
[1] 0.9997
> (R=sqrt(R2))#显示多元数据复相关系数
[1] 0.9999

三、回归变量的选择方法

1.变量选择准则

一、全局择优法

> install.packages("leaps")
--- 在此連線階段时请选用CRAN的鏡子 ---
试开URL’https://cloud.r-project.org/bin/windows/contrib/4.3/leaps_3.1.zip'
Content type 'application/zip' length 86995 bytes (84 KB)
downloaded 84 KB程序包‘leaps’打开成功,MD5和检查也通过下载的二进制程序包在C:\Users\86187\AppData\Local\Temp;\RtmpCeDQI1\downloaded_packages里
> library(leaps)#加载leaps包
Warning message:
程辑包‘leaps’是用R版本4.3.3 来建造的 
> varsel=regsubsets(y~x1+x2+x3+x4,data=yX)#多元数据线性回归变量选择模型
> result=summary(varsel)#变量选择方法结果  
> data.frame(result$outmat,RSS=result$rss,R2=result$rsq)#RSS和决定系数准则结果展示 x1 x2 x3 x4   RSS     R2
1  ( 1 )     *       752.9 0.9989
2  ( 1 )     *     * 203.9 0.9997
3  ( 1 )  *  *     * 202.3 0.9997
4  ( 1 )  *  *  *  * 202.3 0.9997

2.变量选择的常用准则

> data.frame(result$outmat,adjR2=result$adjr2,Cp=result$cp,BIC=result$bic)x1 x2 x3 x4  adjR2     Cp    BIC
1  ( 1 )     *       0.9989 69.745 -205.6
2  ( 1 )     *     * 0.9997  1.199 -242.6
3  ( 1 )  *  *     * 0.9997  3.001 -239.4
4  ( 1 )  *  *  *  * 0.9997  5.000 -236.0

3.逐步回归分析

1.向前引入法
2.向后剔除法
3.逐步筛选法
在这里插入图片描述

> fm.step=step(fm,direction="forward")#向前引入法变量选择结果
Start:  AIC=68.15
y ~ x1 + x2 + x3 + x4> fm.step=step(fm,direction="backward")#向后剔除法变量选择结果
Start:  AIC=68.15
y ~ x1 + x2 + x3 + x4Df Sum of Sq  RSS   AIC
- x3    1         0  202  66.2
- x1    1         1  204  66.4
<none>               202  68.2
- x4    1       174  376  85.4
- x2    1      6433 6635 174.4Step:  AIC=66.16
y ~ x1 + x2 + x4Df Sum of Sq  RSS   AIC
- x1    1         2  204  64.4
<none>               202  66.2
- x4    1       197  400  85.3
- x2    1      7382 7585 176.5Step:  AIC=64.39
y ~ x2 + x4Df Sum of Sq    RSS   AIC
<none>                 204  64.4
- x4    1       549    753 102.9
- x2    1    367655 367859 294.8
> fm.step=step(fm,direction="both")#逐步筛选法变量选择结果
Start:  AIC=68.15
y ~ x1 + x2 + x3 + x4Df Sum of Sq  RSS   AIC
- x3    1         0  202  66.2
- x1    1         1  204  66.4
<none>               202  68.2
- x4    1       174  376  85.4
- x2    1      6433 6635 174.4Step:  AIC=66.16
y ~ x1 + x2 + x4Df Sum of Sq  RSS   AIC
- x1    1         2  204  64.4
<none>               202  66.2
+ x3    1         0  202  68.2
- x4    1       197  400  85.3
- x2    1      7382 7585 176.5Step:  AIC=64.39
y ~ x2 + x4Df Sum of Sq    RSS   AIC
<none>                 204  64.4
+ x1    1         2    202  66.2
+ x3    1         0    204  66.4
- x4    1       549    753 102.9
- x2    1    367655 367859 294.8

总结

本节学习了多元回归分析以及逐步回归分析的基本解决步骤及方法,学到了很多,继续加油!

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

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

相关文章

选择内核注意力 SK | Selective Kernel Networks

论文名称&#xff1a;《Selective Kernel Networks》 论文地址&#xff1a;https://arxiv.org/pdf/1903.06586.pdf 代码地址&#xff1a;https://github.com/implus/SKNet 在标准的卷积神经网络中&#xff0c;每层人工神经元的感受野被设计为具有相同的大小。神经科学界已经广…

使用OkHttp 缓存 API 调用提高Android应用性能

使用OkHttp 缓存 API 调用提高Android应用性能 坦率地说&#xff0c;我们都遇到过这样的情况——焦急地刷新应用&#xff0c;看着加载图标不停地旋转&#xff0c;等待那个至关重要的 API 响应。这样的等待我们已经是炉火纯青了&#xff0c;是吧&#xff1f;手指有节奏地轻敲屏…

《R语言与农业数据统计分析及建模》——多重共线性和逐步回归

一、多重共线性 多重共线性&#xff1a;在多元线性回归时&#xff0c;多个自变量之间存在高度相关关系&#xff0c;时模型估计失真或难以估计准确的情况。 一般地&#xff0c;多元线性回归中自变量间应尽量相互独立。常规模型诊断方法难以检测多重共线性。 1、案例解释 作物产…

ActiveMQ 反序列化漏洞 (CVE-2015-5254)

一、漏洞描述 Apache ActiveMQ 是由美国阿帕奇&#xff08;Apache&#xff09;软件基金会开发的开源消息中间件&#xff0c;支持 Java 消息服务、集群、Spring 框架等。属于消息队列组件(消息队列组件&#xff1a;分布式系统中的重要组件&#xff0c;主要解决应用耦合、异步消息…

数据库|TiDB-Server API的高效应用指南

一、API介绍 1.Status 显示TiDB 连接数、版本和git_hash 信息 tidb-server_ip:status_port/status { "connections": 0, "version": "5.7.25-TiDB-v6.1.1", "git_hash": "5263a0abda61f102122735049fd0dfadc7b7f822" } 2.St…

mysql-sql-练习题-4-标记

标记 连续登录2-7天用户建表排名找规律 最大连胜次数建表只输出连胜结果输出所有连续结果 连续登录2-7天用户 建表 create table continuous_login(user_id1 integer comment 用户id,date_login date comment 登陆日期 ) comment 用户登录表;insert into continuous_login val…

LT2611UX四端口 LVDS转 HDMI2.0,带音频

描述LT2611UX 是一款面向机顶盒、DVD 应用的高性能 LVDS 至 HDMI2.0 转换器。LVDS输入可配置为单端口、双端口或四端口&#xff0c;具有1个高速时钟通道和3~4个高速数据通道&#xff0c;工作速率最高为1.2Gbps/通道&#xff0c;可支持高达19.2Gbps的总带宽。LT2611UX 支持灵活的…

002 springCloudAlibaba Sentinel流控-关联

当与A关联的资源B达到阀值后&#xff0c;就限流A自己 文章目录 FlowLimitController.javaSentinelServerApplication.javaServletInitializer.javaapplication.yamlpom.xmlpom.xml 启动Sentinel8080 - java -jar sentinel-dashboard-1.7.0.jar 启动微服务8401 启动8401微服务…

72、栈-每日温度

思路&#xff1a; 第一种方法&#xff0c;双循环&#xff0c;第一层循环拿出一个元素&#xff0c;第二层循环寻找最近比当前大的元素位置。 第二种方法&#xff1a;使用栈来实现。 初始化&#xff1a; int[] ans 用来存储每一天之后多少天温度会升高。Stack<Integer> 用…

Java | AI+编程 | 如何使用通义灵码提升开发效率

大家好&#xff0c;我是程序员影子 | 全网同名 一名致力于帮助更多朋友快速入门编程的程序猿 今天&#xff0c;我将以小白入门的视角带着大家学会如何在Idea上使用通义灵码&#xff0c;提高开发效率&#xff0c;减少重复工作&#xff1b;话不多说&#xff0c;我们直接进入正题…

golang beego结合wire依赖注入及自动路由

1 安装wire 1.1 通过命令直接安装 go install github.com/google/wire/cmd/wirelatest 1.2 通过go get方式安装 go get github.com/google/wire/cmd/wire进入目录编译 cd C:\Users\leell\go\pkg\mod\github.com\google\wirev0.6.0\cmd\wire go build 然后将wire.exe移动到…

广交会烹饪机器人用上大模型 支付宝小程序云提供技术支持

近日&#xff0c;第135届广交会正在火热进行&#xff0c;记者获悉&#xff0c;支付宝小程序云助力合作伙伴田螺云厨&#xff0c;在烹饪机器人上开始用上大模型技术。各类智能产品的亮相&#xff0c;从中国制造迈向中国创造&#xff0c;也成为广交会的一个亮点。 &#xff08;图…

鲲鹏华为云--OBS

文章目录 1.创建桶2.上传对象3.下载对象4.分享对象5. 删除对象6.删除桶 1.创建桶 创建桶 2.上传对象 点击创建的桶–“上传对象” 拖拽本地文件或文件夹至“上传对象”区域框内添加待上传的文件。 也可以通过单击“上传对象”区域框内的“添加文件”&#xff0c;选择本地…

C语言函数指针的使用、函数指针数组及使用、指向函数指针数组的指针,指针进阶版的冒泡排序等介绍

文章目录 前言一、函数指针的使用1. 加减乘除计算器普通实现2. 加减乘除计算机函数指针实现 二、函数指针数组1. 函数指针数组的书写2. 两个有趣的代码3. 函数指针数组的使用 三、指向函数指针数组的指针四、指针进阶_冒泡排序1.整型冒泡排序2. C语言qsort函数3. 仿写C语言qsor…

ChatGLM2-6B的部署步骤_A3

ChatGLM2-6B 下载地址 一、VisualGLM-6B环境安装 1、硬件配置 操作系统&#xff1a;Ubuntu_64&#xff08;ubuntu22.04.3&#xff09; GPU&#xff1a;4050 显存&#xff1a;16G 2、配置环境 建议最好自己新建一个conda环境 conda create -n chatglm2 python3.8pip …

【Java】HOT100 贪心算法

目录 理论基础 一、简单贪心 LeetCode455&#xff1a;分发饼干 二、中等贪心 2.1 序列问题 LeetCode376&#xff1a;摆动序列 2.2 贪心股票问题 LeetCode121&#xff1a;买卖股票的最佳时机 LeetCode121&#xff1a;买卖股票的最佳时机ii 2.3 两个维度权衡问题 LeetCode135&…

UE Snap03 启动参数设置

UE Snap03 启动参数设置 UE打包后传入自定义参数及解析。 void UGameInstance::StartGameInstance() {Super::StartGameInstance();UE_LOG(LogTemp, Warning, TEXT("--StartGameInstance--"));FString param;FParse::Value(FCommandLine::Get(), TEXT("-UserN…

美团商城代付系统源码

超火的美团代付微信小程序是一种便捷的线上支付工具&#xff0c;让用户可以方便地在微信小程序中完成美团订单的支下面是将美团代付微信小程序源码搭建的相关步骤&#xff1a; 测试网站,页面放后面&#xff0c;可以定制哦 我收了几百块就帮我另外一个客户搭建好了 搭建教程: 以…

前端VUE项目中使用async()用法是为什么?能不用吗?

使用 async 关键字来定义一个函数主要有几个原因&#xff1a; 支持 await 关键字&#xff1a; async 函数允许你在其中使用 await 关键字&#xff0c;这使得你可以在不阻塞程序执行的情况下&#xff0c;等待一个异步操作&#xff08;如网络请求、文件读写等&#xff09;的完成。…

Nutch库入门指南:利用Java编写采集程序,快速抓取北京车展重点车型

概述 在2024年北京车展上&#xff0c;电动汽车成为全球关注的焦点之一。这一事件不仅吸引了全球汽车制造商的目光&#xff0c;也突显了中国市场在电动汽车领域的领先地位。117台全球首发车的亮相&#xff0c;其中包括30台跨国公司的全球首发车和41台概念车&#xff0c;彰显了中…