当前位置: 首页 > news >正文

MATLAB实现相关性分析

目录

一.基本理论

 二.两类相关系数的对比

三.相关系数的假设检验

四.MATLAB的相关操作

五.其他有关的一些列技巧

六.案例展示

七.实战操作


一.基本理论

所谓相关系数,本质上是来衡量两组数据的关系大小——对应呈现函数关心的两种变量,那么我们可以很清楚他们之间的关系;而对于没有强烈关联的变量,我们若无法抽象他们之间的函数,那么可以用相关性强弱来描述他们之间的关系所在。

如上是有关相关系数的计算方式:所谓的皮尔逊相关系数,即为我们本科期间学过的那种,也就是考研数一数三会涉及的部分~

如下是需要注意的一些列理论知识:
 总的来说,当变量之间呈现线性关系时,才有考虑相关系数大小的意义~

如上是衡量相关性强弱的普遍标准:一般认为相关系数大于0.5时,呈现较强的相关性~

 二.两类相关系数的对比

通常我们会接触到皮尔逊相关系数斯皮尔曼相关系数两种类型。

如下是关于斯皮尔曼相关系数的理论:

 如下是区别方式:

三.相关系数的假设检验

这一部分非常理论,考数一的同学可以稍微研究研究,不过还是以实际操作为重点~ 

 

满足假设检验的条件:

第一, 实验数据通常假设是成对的来自于正态分布的总体。 因为我们在求皮尔
逊相关性系数以后,通常还会用 t 检验之类的方法来进行皮尔逊相关性系数检验,
t 检验是基于数据呈正态分布的假设的。
第二, 实验数据之间的差距不能太大。 皮尔逊相关性系数受异常值的影响比较
大。
第三:每组样本之间是独立抽样的。 构造 t 统计量时需要用到。

四.MATLAB的相关操作

如下是20个初二学生的身高及跳远成绩:

身高立定跳远
163208
158210
157210
158210
157210
170198
167180
160187
167180
160187
170198
160167
165190
162175
166200
169179
159217
162175
166200

首先介绍一些基本的统计函数:

如下是计算皮尔逊相关系数的代码:

x=[163,158,157,158,157,170,167,160,167,160,170,160,165,162,166,169,159,162,166];
y=[208,210,210,210,210,198,180,187,180,187,198,167,190,175,200,179,217,175,200];
R=corrcoef(x,y);

如下代码会返回假设检验要用到的p值:

[R,P]=corrcoef(x,y);

 如下是正态分布检验用到的代码:

%% 正态分布检验
[hx,px] = jbtest(x,0.05);
[hy,py] = jbtest(y,0.05);
disp(H)
disp(P)

如下是计算斯皮尔曼相关系数的代码(通常情况下两种相关系数不一样大):

(注意:x与y必须是列向量)

Rs=corr(x',y','type','Spearman');

 斯皮尔曼相关系数假设检验的公式:

test=(1-normcdf(Rs*(19-1)^1/2))*2;

test值>0.05即无法拒绝原假设。

如上即为操作的基本功。

五.其他有关的一些列技巧

相关技术等统计学问题,用SPSS计算往往更方便,如下图:

勾选自己想要的选项:

 计算结果如下:

此外,关于热力图的画法,MATLAB种用到函数heatmap(R),其中R即为相关系数矩阵。 

此处介绍一种更投机的操作方式——Excel法:

具体的方式就是,把相关系数矩阵沾进Excel中,再将行列大小调成一致——成正方形显示~再根据条件格式设置样式~

六.案例展示

分享在数模和市场调研大赛中用到相关性分析的典例:

 21年亚太赛的案例,当时第一次纯小白,画得属实抽象.........

 22年华数杯,有进步

22国赛选拔赛,渐入佳境

 

 22年国赛,养兵千日用兵一时(写得有点问题,不重要。。。当时已经交了才发现错误

 

23年正大杯——这种就是前文提到的Excel法,属实有点low哈哈哈,平时小打小闹无所谓,学术论文尽量还是正经画比较好~ 

七.实战操作

来做一个实战:很多小伙伴都会关心——考研时名校会不会对本科出身比较有成见呢?我们采用23年WHU电子信息专硕的录取情况来做一个统计~

我们计算4组相关系数

  • 初试成绩与本科出身
  • 复试成绩与本科出身
  • 初试成绩与录取情况
  • 出生与录取情况

其中,我们对本科出身做出如下正向化——即学校越好得分得分越高:

学校类型对应数值
武汉9854
其他区域9853
2112
双非及以下1

是否拟录取使用1和0分别标记

注意:实际上,处理0-1变量,更适合使用Logistic回归,不过这里为了说明相关性分析的主要思想就凑合用了...

最后得到如下118条数据:

序号初试得分复试得分录取情况
142888.7241
241489.0431
342386.1231
440591.0821
539691.2841
641286.1221
740189.3211
840288.8841
940387.9231
1042680.0841
1142180.611
1240384.6841
1339686.3641
1437791.3241
1541280.811
164018431
173928611
1839484.7241
1938487.1621
2040281.431
2139184.6841
2238486.6821
2338785.2831
2438585.6441
2539283.3231
2640977.1631
2737088.6821
2839381.5221
2940278.7631
3037187.841
3136389.8821
3237187.411
3336389.6441
3435691.6411
3537087.3621
3636189.7241
3739479.7611
3837485.4821
3937784.3611
4036089.421
4138083.3621
4237784.2421
4338880.9231
4436089.3231
4538980.4421
4636487.8841
4736886.0411
4838879.8421
4935689.441
5038181.831
5137483.3631
5237184.241
5338380.611
5436984.7611
5536785.3221
5638679.441
5737781.4831
5835986.8811
5937681.6421
6037183.1241
6137681.3231
6237581.611
6335587.4811
6437581.2431
6536185.3231
6636185.0421
6736982.631
6836583.6421
6935885.5611
7036981.821
7137280.8831
7236483.2411
7336582.6811
7436682.3621
7535984.1221
7637280.1241
7736581.9641
7835983.7211
7935784.211
8036381.7211
8136680.5621
8235583.6411
8335683.3221
8438375.0821
8537378.0411
8637278.3221
8736081.8821
8838574.2840
8935781.9220
9039271.420
9136579.1210
9236179.4820
9337874.210
9438073.2810
9537076.1630
9635979.410
9737175.4440
9835978.3210
9936775.6820
10035778.240
10136176.4810
10236275.610
10339465.5620
10439465.5210
10538767.5610
10637770.1620
10737071.820
10835974.810
10936173.5620
11036273.220
11135873.9610
11235873.8820
11335574.420
11436869.3220
11535571.9630
11635670.8810
11736761.5210
11836063.0810

直接用MATLAB一个corrcoef搞定,结果如下:

因此得出如下相关系数的结果:

  • 初试成绩与本科出身:0.2760
  • 复试成绩与本科出身:0.2935
  • 初试成绩与录取情况:0.2892
  • 出生与录取情况:0.2493

综上,我们可以得出结论:

首先,初试成绩与本科出身的相关性较低,这现实逻辑相一致——初试成绩仅与过去一年你的投入时间成本呈强烈正相关,而与别的面板数据——比如绩点等,没有太大的关系;

此外,复试成绩与本科出身并没有很强的相关性,证明该校不歧视本科出身

初试成绩与录取情况虽然成较弱的正相关,可能有两个原因——一是模型的严谨性不足,另一方面可能是因为初试成绩占比相对较低(巧合的是复试强相关......),这要不同学校具体分析;

最后,出身与录取情况呈弱相关,说明上岸与否,全掌握在自己手里。

  • 天助自助者,望诸君共勉~

相关文章:

MATLAB实现相关性分析

目录 一.基本理论 二.两类相关系数的对比 三.相关系数的假设检验 四.MATLAB的相关操作 五.其他有关的一些列技巧 六.案例展示 七.实战操作 一.基本理论 所谓相关系数,本质上是来衡量两组数据的关系大小——对应呈现函数关心的两种变量,那么我们可以…...

MySQL索引看这篇就够了

能简单说一下索引的分类吗? 例如从基本使用使用的角度来讲: 主键索引: InnoDB 主键是默认的索引,数据列不允许重复,不允许为 NULL,一个表只能有一个主键。唯一索引: 数据列不允许重复,允许为 NULL 值&…...

无法从 /var/lib/rpm 打开软件包数据库

使用yum命令安装软件包时,报错“无法从 /var/lib/rpm 打开软件包数据库” 小白教程,一看就会,一做就成。 1.原因 是误操作导致 rpm 数据库损坏。(/var/lib/rpm 目录下的文件被损坏) 2.解决 当RPM 数据库发生损坏&a…...

路由器实现 IP 子网之间的通信

目录 路由器配置静态或默认路由实现 IP 子网之间的通信 地址聚合与最长前缀匹配路由配置 路由器配置静态或默认路由实现 IP 子网之间的通信 按如下拓扑图配置 其中&#xff0c;路由器加入4GEW-T PC配置如下 LSW1的配置 <Huawei>sys Enter system view, return user…...

解决kali beef启动失败问题及实战

文章目录 一、解决方法二、靶场实战应用1.首先打开dvwa这个靶场&#xff0c;设置难度为low2.打开xss-stored3.准备payload4.提交payload5.利用 一、解决方法 首先需卸载 ruby apt remove ruby 卸载 beef apt remove beef-xss 重新安装ruby apt-get install ruby apt-get insta…...

【NetEq】NackTracker 走读

重传列表的最大限制是500个包,大约10秒钟 // A limit for the size of the NACK list.static const size_t kNackListSizeLimit = 500; // 10 seconds for 20 ms frame// packets.允许设置一个小于max_nack_list_size的值 // Set a maximum for the size of the NACK list. I…...

条例18~23(设计与声明)

目录 条例18 让接口被正确使用&#xff0c;不易被误用 总结 条例19 设计class犹如设计type 条例20 宁以const的引用传参替代传值传参 总结 条例21 必须返回对象时&#xff0c;别妄想返回他的引用 总结 条例22 将成员变量声明为private 总结 条例23 宁以非友元非…...

STM32 UART通信协议 基础知识

通用异步收发器&#xff08;Universal Asynchronous Receiver/Transmitter)&#xff0c;通常称作UART&#xff0c;是一种串行、异步、全双工的通信协议。 在通信领域中&#xff0c;有两种数据通信方式&#xff1a;并行通信和串行通信。串口的数据传输是以串行方式进行的。串口在…...

nginx部署vue前端项目,访问报错500 Internal Server Error

前言 描述&#xff1a;当我配置好全部之后&#xff0c;通过 服务器 ip 地址访问&#xff0c;遇到报错信息&#xff1a;500 Internal Server Error。 情况说明 前提&#xff1a;我是通过Docker启动nginx容器&#xff0c;通过-v 绑定数据卷&#xff0c;将html文件和nginx.conf…...

@Excel注解

在 Java 开发中&#xff0c;Excel 注解通常用于标记实体类的字段&#xff0c;以指示与 Excel 文件的导入和导出相关的配置信息。 Excel 注解通常是自定义的注解&#xff0c;它可以包含多个属性&#xff0c;用于定义与 Excel 相关的配置&#xff0c;如字段的标题、顺序、数据格…...

解释器模式简介

概念&#xff1a; 解释器模式&#xff08;Interpreter Pattern&#xff09;是一种行为型设计模式&#xff0c;它用于定义语言的文法&#xff0c;并解析和执行给定语言中的表达式。该模式将每个表达式表示为一个类&#xff0c;并提供了一种方式来组合这些表达式以实现复杂的语句…...

图像识别技术在不同场景下有哪些应用?

图像识别技术在不同场景下的应用包括&#xff1a; 遥感图像识别&#xff1a;航空遥感和卫星遥感图像通常用图像识别技术进行加工以便提取有用的信息。该技术目前主要用于地形地质探查&#xff0c;森林、水利、海洋、农业等资源调查&#xff0c;灾害预测&#xff0c;环境污染监…...

阿里巴巴OceanBase介绍

前言 官网地址&#xff1a;https://www.oceanbase.com/ OceanBase是由蚂蚁集团完全自主研发的国产原生分布式数据库&#xff0c;始创于2010年。是全球唯一在 TPC-C 和 TPC-H 测试上都刷新了世界纪录的国产原生分布式数据库。 2010年&#xff0c;创始人阳振坤加入阿里巴巴&…...

leetcode 2560. 打家劫舍 IV

2560. 打家劫舍 IV 沿街有一排连续的房屋。每间房屋内都藏有一定的现金。现在有一位小偷计划从这些房屋中窃取现金。 由于相邻的房屋装有相互连通的防盗系统&#xff0c;所以小偷 不会窃取相邻的房屋 。 小偷的 窃取能力 定义为他在窃取过程中能从单间房屋中窃取的 最大金额 。…...

正点原子lwIP学习笔记——Socket接口TCP实验

1. Socket接口TCP Client配置连接 配置步骤如下所示&#xff1a; sin_family设置为AF_INET表示IPv4网络协议&#xff1b;sin_port为设置端口号&#xff1b;sin_addr. s_addr设置远程IP地址&#xff1b;调用函数Socket创建Socket连接&#xff0c; 注意该函数的第二个参数SOCK_…...

【Flink】

事件驱动型应用 核心目标&#xff1a;数据流上的有状态计算 Apache Flink是一个框架和分布式处理引擎&#xff0c;用于对无界或有界数据流进行有状态计算。 运行逻辑 状态 把流处理需要的额外数据保存成一个“状态”,然后针对这条数据进行处理,并且更新状态。这就是所谓的“…...

大数据Flink(九十一):Array Expansion(数组列转行)和Table Function(自定义列转行)

文章目录 Array Expansion(数组列转行)和Table Function(自定义列转行)...

华为云云耀云服务器L实例评测|华为云云耀云服务器L实例CentOS的存储和备份策略

1 华为云云耀云服务器L实例介绍 华为云云耀云服务器L实例是华为云计算服务中的一种虚拟云服务器&#xff0c;它提供了强大的计算资源&#xff0c;可以在云端运行各种应用程序和服务。 华为云服务器提供了多种实例类型&#xff0c;包括通用型、计算优化型、内存优化型等&#…...

Web自动化测试 —— 如何进行Selenium页面数据及元素交互?啊哈

前言&#xff1a; Web自动化测试是一种常用的测试方式&#xff0c;通过在浏览器中模拟用户操作以及与页面元素的交互&#xff0c;可以有效地检验页面的功能性以及稳定性。Selenium是一款流行的Web自动化测试工具&#xff0c;在本篇文章中&#xff0c;我们将介绍如何使用Seleni…...

点云从入门到精通技术详解100篇-基于全景图的室内场景点云补全方法(续)

目录 3.3 模型训练及实验评估 3.3.1 模型训练 3.3.2实验评估 4 基于自...

网络编程(Modbus进阶)

思维导图 Modbus RTU&#xff08;先学一点理论&#xff09; 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议&#xff0c;由 Modicon 公司&#xff08;现施耐德电气&#xff09;于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...

RestClient

什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端&#xff0c;它允许HTTP与Elasticsearch 集群通信&#xff0c;而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级&#xff…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析

这门怎么题库答案不全啊日 来简单学一下子来 一、选择题&#xff08;可多选&#xff09; 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘&#xff1a;专注于发现数据中…...

现代密码学 | 椭圆曲线密码学—附py代码

Elliptic Curve Cryptography 椭圆曲线密码学&#xff08;ECC&#xff09;是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础&#xff0c;例如椭圆曲线数字签…...

【git】把本地更改提交远程新分支feature_g

创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...

MySQL 8.0 OCP 英文题库解析(十三)

Oracle 为庆祝 MySQL 30 周年&#xff0c;截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始&#xff0c;将英文题库免费公布出来&#xff0c;并进行解析&#xff0c;帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...

SpringCloudGateway 自定义局部过滤器

场景&#xff1a; 将所有请求转化为同一路径请求&#xff08;方便穿网配置&#xff09;在请求头内标识原来路径&#xff0c;然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2

每日一言 今天的每一份坚持&#xff0c;都是在为未来积攒底气。 案例&#xff1a;OLED显示一个A 这边观察到一个点&#xff0c;怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 &#xff1a; 如果代码里信号切换太快&#xff08;比如 SDA 刚变&#xff0c;SCL 立刻变&#…...

Web 架构之 CDN 加速原理与落地实践

文章目录 一、思维导图二、正文内容&#xff08;一&#xff09;CDN 基础概念1. 定义2. 组成部分 &#xff08;二&#xff09;CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 &#xff08;三&#xff09;CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 &#xf…...

Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?

在大数据处理领域&#xff0c;Hive 作为 Hadoop 生态中重要的数据仓库工具&#xff0c;其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式&#xff0c;很多开发者常常陷入选择困境。本文将从底…...