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

news2024/11/18 6:03:08

多元相关与回归分析及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间存在回归关系


总结

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

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

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

相关文章

openlayer 使用ol-ext插件实现凸显区域

使用ol-ext插件实现凸显多变形 效果如图 1、创建openlayer var map; var view; var tileLayer, source, vector;function init() {tileLayer new ol.layer.Tile({source: new ol.source.TileArcGISRest({url: "http://map.geoq.cn/arcgis/rest/services/ChinaOnlineStr…

java 远程debug

java -agentlib:jdwptransportdt_socket,servery,suspendn,address50050 -Xmx1536m -XX:HeapDumpOnOutOfMemoryError -XX:HeapDumpPath./ -jar ${JAR_NAME} >/dev/null 2>&1 &参数说明 -agentlib:jdwptransportdt_socket,servery,suspendn,address50050: 这个参数…

Linux:使用匿名管道对进程池的模拟实现

目录 一、Makefile 二、processpool.cc 2.1创建通信管道和子进程 2.2控制子进程 2.3回收进程 三、task.hpp 四、完整代码 接下来我们将模拟实现一个进程池&#xff0c;进程池广泛应用与各个领域和方向&#xff0c;比如我们打开电脑后同时打开很多个进程&#xff08;也就是软…

python公务用车医院校园企业车辆管理系统

本 Python版本&#xff1a;python3.7 前端&#xff1a;vue.jselementui 框架&#xff1a;django/flask都有,都支持 后端&#xff1a;python 数据库&#xff1a;mysql 数据库工具&#xff1a;Navicat 开发软件&#xff1a;PyCharm 公务用车管理智慧云服务监管平台有管理员和用户…

托普利兹矩阵(T矩阵)及其应用(Matlab demo测试)

托普利兹矩阵&#xff08;T矩阵&#xff09;及其应用&#xff08;Matlab demo测试&#xff09; 1. 概念2. Matlab简单测试2.1 生成测试2.2 基本性质及原理2.3 性质验证 3. 其他应用总结3.1 其他性质3.2 文献阅读看到的 参考资料 1. 概念 托普利兹矩阵&#xff0c;简称为T型矩阵…

O2OA开发平台前端源码级二次开发(Vue3,React)

在使用O2OA进行项目定制化开发时&#xff0c;我们可以开发新的前端组件&#xff08;x_component&#xff09;以扩展O2OA来实现更多的业务。这种新增前端组件或者前端业务的开发通常会配合后端自定义应用实现的服务来完成系统内数据的交互。在当系统默认的界面不符合系统UI/UE设…

Sentinel 控制台学习

引言 上篇文章已经讲过 SpringCloud Sentinel集成到微服务项目中&#xff0c;接下来我们继续学习怎么使用sentinel控制台对微服务进行限流&#xff0c;熔断&#xff0c;降级等一系列操作。 控制台 接下来我们单独讲解每一个菜单按钮 实时监控 实时监控&#xff1a; 可以看到…

Leetcode 145:二叉树的后序遍历(迭代法)

给你一棵二叉树的根节点 root &#xff0c;返回其节点值的 后序遍历 。 思路&#xff1a; 迭代法的思路是&#xff0c;使用栈&#xff0c;一层一层的将树节点遍历入栈。 比如下面这个树&#xff0c;使用迭代法&#xff0c;1&#xff09;第一层&#xff0c;让根节点入栈。2&a…

2024深圳杯数学建模竞赛A题(东三省数学建模竞赛A题):建立火箭残骸音爆多源定位模型

更新完整代码和成品完整论文 《2024深圳杯&东三省数学建模思路代码成品论文》↓↓↓&#xff08;浏览器打开&#xff09; https://www.yuque.com/u42168770/qv6z0d/zx70edxvbv7rheu7?singleDoc# 2024深圳杯数学建模竞赛A题&#xff08;东三省数学建模竞赛A题&#xff0…

2024五一杯数学建模A题思路分析-钢板最优切割路径问题

文章目录 1 赛题选题分析 2 解题思路3 最新思路更新 1 赛题 A题 钢板最优切割路径问题 提高钢板下料切割过程中的工作效率&#xff0c;是模具加工企业降低成本和增加经济效益的重要途径&#xff0c;其中钢板切割的路径规划是钢板切割过程的一个关键环节。 钢板切割就是使用特殊…

附录6-1 黑马优购项目-组件与过滤器

目录 1 过滤器-格式化价格 2 组件-搜索框 3 组件-数量框 4 组件-商品概况 4.1 格式化价格 4.2 选择性使用勾选框和数量框 4.3 源码 1 过滤器-格式化价格 这个项目中仅用到格式化价格这一种过滤器。过滤器文件位置为store/filter.wxs 文件内容是这样的&#xf…

【嵌入式DIY实例】-植物自动浇水机

DIY自动植物浇水机 文章目录 DIY自动植物浇水机1、硬件准备与接线2、代码实现智能灌溉系统是一种先进的、新技术的灌溉技术,可以减少人力、时间等。在本文中,将介绍如何实现一个植物自动浇水机。通过这个项目,可以给我们身边的一些植物,所有花盆都安装这一系统。这个系统由…

【JavaEE初阶系列】——理解tomcat 带你实现最简单的Servlet的hello world程序(七大步骤)

目录 &#x1f6a9;认识Tomcat &#x1f6a9;运用Tomcat &#x1f6a9;Servlet &#x1f393;完成简单的Servlet的hello world程序 &#x1f388;创建项目Maven &#x1f388;引入依赖 &#x1f388;创建目录 &#x1f388;编写代码 &#x1f388;打包程序 &#x1…

关于用户体验和设计思维

介绍 要开发有效的原型并为用户提供出色的体验&#xff0c;了解用户体验 (UX) 和设计思维的原则至关重要。 用户体验是用户与产品、服务或系统交互并获得相应体验的过程。 设计思维是一种解决问题的方法&#xff0c;侧重于创新和创造。 在启动期实现用户体验和设计思维时&#…

头歌:SparkSQL简单使用

第1关&#xff1a;SparkSQL初识 任务描述 本关任务&#xff1a;编写一个sparksql基础程序。 相关知识 为了完成本关任务&#xff0c;你需要掌握&#xff1a;1. 什么是SparkSQL 2. 什么是SparkSession。 什么是SparkSQL Spark SQL是用来操作结构化和半结构化数据的接口。…

Tuxera NTFS使用教程 轻松实现磁盘格式转换的教程分享 ntfsMac软件怎么用

NTFS for Mac是Mac电脑里非常重要的工具之一&#xff0c;因为它太实用了&#xff0c;解决了NTFS移动硬盘在Mac上的写入问题。但是&#xff0c;小伙伴在安装完软件之后&#xff0c;通常再也不会关注它&#xff0c;甚至时间长了&#xff0c;也就忘了Mac里还有这么一个软件。 在Tu…

GB32960解析工具

几年前搞了一个用Qt开发的国标32960报文解析工具。分享给大家&#xff0c;只用1积分便可以下载。 国标32960新能源车协议解析工具资源-CSDN文库

(附源码)超级简单的SSM图书交易系统,包含技术栈、架构图、设计图、教程

先看首页效果&#xff0c;包含买家、卖家、管理员三个端口。启动有问题可以联系我解决&#xff0c;微信&#xff1a;keepgoing4u 架构图&#xff1a; 用到软件 Jdk1.8 Mysql IntelliJ IDEA Maven 项目技术&#xff1a; Spring Boot SSM JSP mybatis Maven B/S模式 配置…

云服务器的主要用途有哪些,使用云服务器具有哪些方面的优势

随着科技的飞速发展&#xff0c;云计算已经成为现代企业和个人用户不可或缺的技术支持&#xff0c;云计算技术已经逐渐渗透到我们生活的方方面面。云服务器作为云计算的核心组成部分&#xff0c;正在逐步改变我们的数据存储和处理方式&#xff0c;成为各类互联网用户实现综合业…

前端vite+rollup前端监控初始化——封装基础fmp消耗时间的npm包并且发布npm beta版本

文章目录 ⭐前言&#x1f496;vue3系列文章 ⭐初始化npm项目&#x1f496;type为module&#x1f496;rollup.config.js ⭐封装fmp耗时计算的class&#x1f496;npm build打包class对象 ⭐发布npm的beta版本&#x1f496; npm发布beta版本 ⭐安装web-performance-tool的beta版本…