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

多元相关与回归分析及R使用


文章目录

  • 多元相关与回归分析及R使用
  • 一.变量间的关系分析
    • 1.两变量线性相关系数的计算
    • 2.相关系数的假设检验
  • 二.一元线性回归分析的R计算
  • 三、回归系数的假设检验
  • 总结


一.变量间的关系分析

变量间的关系及分析方法如下:
在这里插入图片描述

1.两变量线性相关系数的计算

两个变量之间的线性相关,用相关系数来表示线性关系,总体相关系数计算公式为:
在这里插入图片描述
在这里插入图片描述
实际中,我们通常计算Pearson相关系数
在这里插入图片描述
例:身高与体重的相关关系分析

> x1=c(171,175,159,155,152,158,154,164,168,166,159,164) #身高
> x2=c(57,64,41,38,35,44,41,51,57,49,47,46)    #体重
> plot(x1,x2)

在这里插入图片描述
离均差积和函数

> lxy <- function(x1, x2) {
+   n <- length(x1)
+   sum(x1 * x2) - sum(x1) * sum(x2) / n
+ }
> lxy(x1,x1)
[1] 556.9167
> lxy(x1,x2)
[1] 645.5
> lxy(x2,x2)
[1] 813
> (r=lxy(x1,x2)/sqrt(lxy(x1,x1)*lxy(x2,x2)))
[1] 0.9593031

这里r为正值,说明该组人群的身高与体重之间呈现正的线性相关关系。
当然,R语言中也自带求相关系数的函数

cor(x,y=NULL,method=c(“pearson”,“kendall”,“spearman”))
x为数值向量、矩阵或数据框
y为空或数值向量、矩阵或数据框
method为计算方法,包括"pearson"、"kendall"和"spearman’“三种,默认"pearson”

> cor(x1,x2)
[1] 0.9593031

2.相关系数的假设检验

r与其他统计指标一样,也有抽样误差。从同一总体内抽取若干大小相同的样本,各样本的相关系数总有波动。要判断不等于0的?值是来自总体相关系数ρ=0的总体还是来自P≠0的总体,必须进行显著性检验
由于来自p=0的总体的所有样本相关系数呈对称分布,故r的显著性可用t检验来进行。

> n=length(x1)
> t=r/sqrt((1-r^2)/(n-2))
> t
[1] 10.74298

计算t值和P值,作结论。

cor.test(x,y,alternative=c(“two.sided”,“less”,“greater”),
method=c(“pearson”,“kendall”,“spearman”),…)

x,y为数据向量(长度相同)
alternative为备择假设,“two.sided”(双侧),“greater”(右侧)或"less"(左侧)
method为计算方法,包括"pearson"、"kendall"和"spearman’"三种

> cor.test(x1,x2)

        Pearson's product-moment correlation

data:  x1 and x2
t = 10.743, df = 10, p-value = 8.21e-07
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
 0.8574875 0.9888163
sample estimates:
      cor 
0.9593031 

由于p<0.05,于是在显著性水平a=0.05上接受H1,可认
为该人群身高与体重呈现正的线性关系。
注:相关系数的显著性与自由度有关,如n=3,n-2=1时,虽然r=-0.9070,却为不显著;当n=400时,即使r=-0.1000,亦为显著。因此不能只看r的值就下结论,还需看其样本量的大小。

二.一元线性回归分析的R计算

直线方程的模型为:y=a+bx
式中,y为因变量y的估计值,x为自变量的实际值,a、b为待估参数。
其几何意义是:a是直线方程的截距,b是斜率。
其经济意义是:a是当x为0时y的估计值,b是当x每增加一个单位时y增加的数量。b也叫回归系数。

建立直线回归方程:得到回归方程:y=-140.364+1.159x

> b=lxy(x1,x2)/lxy(x1,x1)
> a=mean(x2)-b*mean(x1)
> c(a=a,b=b)
         a          b 
-140.36436    1.15906 

建立回归方程,作出回归直线

> plot(x1,x2);lines(x1,a+b*x1)

在这里插入图片描述

三、回归系数的假设检验

1.方差分析
在这里插入图片描述

> SST=lxy(x2,x2)
> SSR=b*lxy(x1,x2)
> SSE=SST-SSR
> MSR=SSR/1
> MSE=SSE/(n-2)
> F=MSR/MSE
> c(SST=SST,SSR=SSR,SSE=SSE,MSR=MSR,MSE=MSE,F=F)
       SST        SSR        SSE        MSR        MSE          F 
813.000000 748.173425  64.826575 748.173425   6.482657 115.411531 

2.t检验
在这里插入图片描述

> sy.x=sqrt(MSE)
> sb=sy.x/sqrt(lxy(x1,x1))
> t=b/sb
> ta=qt(1-0.05/2,n-2)
> c(sy.x=sy.x,sb=sb,t=t,ta=ta)
      sy.x         sb          t         ta 
 2.5461063  0.1078901 10.7429759  2.2281389

R语言自身的拟合线性模型函数lm()
lm(formula,…)
formula为模型公式,如y~x

例:财政收入与税收的关系探究
在这里插入图片描述

> yx=read.table("clipboard",header=T)
> attach(yx)
> fm=lm(y~x)
> fm

Call:
lm(formula = y ~ x)

Coefficients:
(Intercept)            x  
     -1.197        1.116 

得到回归方程:y=-1.197+1.116x

接着作回归直线:

> plot(x,y);abline(fm)

在这里插入图片描述
作回归方程的假设检验
1)模型的方差分析(ANOVA)

> anova(fm)
Analysis of Variance Table

Response: y
          Df Sum Sq Mean Sq F value    Pr(>F)    
x          1 712077  712077   27427 < 2.2e-16 ***
Residuals 29    753      26                      
---
Signif. codes:  0***0.001**0.01*0.05 ‘.’ 0.1 ‘ ’ 1

P<0.05,x与y间存在直线回归关系

2)回归系数的t检验

> summary(fm)

Call:
lm(formula = y ~ x)

Residuals:
   Min     1Q Median     3Q    Max 
-6.631 -3.692 -1.535  5.338 11.432 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) -1.19660    1.16126   -1.03    0.311    
x            1.11623    0.00674  165.61   <2e-16 ***
---
Signif. codes:  0***0.001**0.01*0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 5.095 on 29 degrees of freedom
Multiple R-squared:  0.9989,    Adjusted R-squared:  0.9989 
F-statistic: 2.743e+04 on 1 and 29 DF,  p-value: < 2.2e-16

由于P<0.05,则x与y间存在回归关系


总结

本小节主要学习了线性相关系数及一元线性回归分析,重点讨论了假设检验等方法过程,继续加油,下节就是多元线性回归分析啦

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

延时任务通知服务的设计及实现(二)-- redisson的延迟队列RDelayedQueue

一、接着上文 RDelayedQueue作为redisson封装的一个分布式延迟队列&#xff0c;直接拿来使用还是比较简单的。 本文主要包括以下几部分&#xff1a; 保存至延迟队列&#xff08;生产者&#xff09;读取延迟队列&#xff08;消费者&#xff09;从延迟队列移除任务 二、rediss…

NCC导入导出开发

&#x1f4e3;NCC导入导出开发 ✨1. 导入流程图 ✨2. 实现步骤 &#x1f434;1. 前端代码实现。 &#x1f434;2. 配置文件创建与设置。 &#x1f434;3. 后端代码实现。 &#x1f434;4. 注册后端代码类。

通过Servlet和JSP,结合session和application实现简单网络聊天室(文末附源码)

目录 一.成品效果 二.代码部分 chat.jsp ChatServlet 一.成品效果 在启动成功后&#xff0c;我们就可以在任意俩个浏览器页面中相互发消息&#xff0c;如图所示左边屏幕使用的是Edge浏览器&#xff0c;右图使用的是火狐浏览器。当然笔者这里只是简单实现最基本的一些功能&…

【IC设计】CRC(循环冗余校验)

目录 理论解读CRC应用CRC算法参数解读常见CRC参数模型 设计实战校招编程题分类串行输入、并行计算、串行输出**串行计算、串行输出&#xff08;线性移位寄存器&#xff09;LSFR线性移位寄存器&#xff08;并转串&#xff09;(并行计算)模二除 总结——串行、并行计算的本质参考…

Vitis HLS 学习笔记--S_AXILITE 寄存器及驱动

目录 1. 简介 2. S_AXILITE Registers 寄存器详解 2.1 “隐式”优势 2.2 驱动程序文件 2.3 硬件头文件 2.4 硬件头文件中 SC/COR/TOW/COH 的解释 2.5 驱动控制过程 3. 总结 1. 简介 回顾此博文《Vitis HLS 学习笔记--Syn Report解读&#xff08;1&#xff09;-CSDN博…

可视化大屏也在卷组件化,组件绝对是效率利器呀。

组件化设计在B端上应用十分普遍&#xff0c;其实可视化大屏组件更为规范&#xff0c;本期分享组件化设计的好处&#xff0c;至于组件源文件如何获取&#xff0c;大家都懂的。 组件化设计对可视化大屏设计有以下几个方面的帮助&#xff1a; 提高可重用性&#xff1a; 组件化设…

【从0开始搭建内网穿透】开源内网穿透神器-中微子代理

1. 背景 概念&#xff1a;内网穿透&#xff0c;就是让处在外网的设备能够访问内网设备的服务。典型的应用场景就是人在外面访问家中的NAS、人在出差调试内网中的web服务、开Minecraft服务器等。 起因&#xff1a;实验室项目有搭建内网穿透服务的需求&#xff08;项目前端需要部…

【网络】UDP协议

文章目录 一. 初识UDP1. UDP简介2. UDP协议的特点特点一&#xff1a;无连接特点二&#xff1a;不可靠特点三&#xff1a;面向数据报 3. UDP报文的格式4. UDP的缓冲区5. 基于UDP实现的用户层协议 二. UDP报文中各个字段1. 原端口号与目的端口号&#xff08;16位&#xff09;1.1 …

《Redis使用手册之Lua脚本》

《Redis使用手册之Lua脚本》 EVAL&#xff1a;执行脚本 127.0.0.1:6379> eval “return ‘hello world’” 0 “hello world” 127.0.0.1:6379> eval “return redis.call(‘set’,KEYS[1],ARGV[1])” 1 “message” “hello world” OK 127.0.0.1:6379> get message…

网络安全知识点

网络安全 1&#xff0e; 网络安全的定义&#xff0c;网络安全的属性。 定义&#xff1a;针对各种网络安全威胁研究其安全策略和机制&#xff0c;通过防护、检测和响应&#xff0c;确保网络系统及数据的安全性。 属性&#xff1a;机密性 认证&#xff08;可鉴别性&#xff09…

ASP.NET淘宝店主交易管理系统的设计与实现

摘 要 淘宝店主交易管理系统主要采用了ASPACCESS的B/S设计模式&#xff0c;通过网络之间的数据交换来实现客户、商品、交易的管理和对客户、商品、交易统计工作&#xff0c;从而提高淘宝店主在管理网店过程中的工作效率和质量。 系统分为基本资料模块&#xff0c;统计资料模…

Windows php 安装 Memcached扩展、php缺失 Memcached扩展、Class ‘Memcached‘ not found

在Windows系统下如何安装 php Memcached 扩展 下载dll文件 pecl地址&#xff1a;https://pecl.php.net/package/memcached 根据版本进行选择 &#xff1a; 解压下载的文件后得到了这么样的文件结构&#xff1a; 配置 移动dll文件到相应文件位置 重点&#xff1a; libme…

PG数据库结构与oracle比较

1.数据库集簇逻辑结构 数据库集簇概念&#xff1a;一个大的数据库是由若干个小的数据库组成&#xff0c;实现数据的隔离存放&#xff0c;在概念上应该是与mysql一样的 在mysql中可以用show database列出数据库 PG中用\l 数据库对象存放在数据库中&#xff1a; PG中的所有数据…

2024小米SU7首批锁单用户调研报告

来源&#xff1a;电动汽车用户联盟 80%的锁单用户认为自己是米粉&#xff0c;64%的用户拥有10个以上米家生态产品&#xff0c; 使用小米手机的比例为67%&#xff0c;使用苹果手机的比例为47% 2. 81%的用户为90后&#xff0c;均龄31岁&#xff0c;未婚者和已婚无孩者占比63%&am…

word启动缓慢之Baidu Netdisk Word Addin

word启动足足花了7秒钟&#xff0c;你知道我这7秒是怎么过来的吗&#xff1f; 原因就是我们可爱的百度网盘等APP&#xff0c;在我们安装客户端时&#xff0c;默认安装了Office加载项&#xff0c;不仅在菜单栏上加上了一个丑陋的字眼&#xff0c;也拖慢了word启动速度........ 解…

C++:智能指针

C&#xff1a;智能指针 内存泄漏RAII智能指针auto_ptrunique_ptrshared_ptr循环引用 weak_ptr deletershared_ptrunique_ptr 内存泄漏 内存泄漏是指程序在动态分配内存后&#xff0c;忘记或无法释放已经不再使用的内存&#xff0c;从而导致系统内存资源被逐渐耗尽的问题。这种…

038——基于STM32和I.MX6uLL实现uart控制GPS(失败者总结)

目录 1、GPS模块简介 2、GPS数据格式 3、方案梳理 1、GPS模块简介 全球定位系统(Global Positioning System&#xff0c; GPS)是一种以空中卫星为基础的高精度无线电导航的定位系统&#xff0c;它在全球任何地方以及近地空间都能够提供准确的地理位置、车行速度及精确的时间…

78、贪心-跳跃游戏

思路 方法1: canJump01 - 使用递归&#xff08;回溯法&#xff09; 这个方法是通过递归实现的&#xff0c;它从数组的第一个位置开始&#xff0c;尝试所有可能的跳跃步数&#xff0c;直到达到数组的最后一个位置或遍历完所有的可能性。 思路&#xff1a; 如果数组为空或者长…

018、Python+fastapi,第一个Python项目走向第18步:ubuntu24.04 安装cuda和pytorch环境

一、说明 我们安装了pytorch环境之后&#xff0c;会用yolo v9 来测试一下&#xff0c;看8g 显存能不能跑下来&#xff0c;上次用无影云电脑&#xff0c;4cpu8g内存直接爆了&#xff0c;云电脑也死机了&#xff0c;提示一直占用内存不释放&#xff0c;我自己的云电脑不能占用内…

帕金森患者应该怎么注意生活方式?

在面对帕金森病的挑战时&#xff0c;科学合理地改善日常生活方式&#xff0c;不仅能帮助患者更好地管理病情&#xff0c;还能提升生活质量。今天&#xff0c;让我们一起探索如何通过简单的日常调整&#xff0c;为患有帕金森病的朋友们带来积极的变化。 饮食调整&#xff1a;营养…