MATLAB实现相关性分析

news2024/10/6 9:52:16

目录

一.基本理论

 二.两类相关系数的对比

三.相关系数的假设检验

四.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

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

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

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

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

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

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

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

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

相关文章

“信任危机”?VR数字工厂让你沉浸式漫游在工厂里

网上因为“预制菜”的问题吵的沸沸扬扬,企业工厂说预制菜都是经过精心准备和加工的食物,但是更多人还是不信任预制菜的制作,归根结底还是因为信任危机,如果说有这样一个全新的展示方式,可以将工厂加工环境1:1还原复刻在…

vuex如何安装、报错、安装版本注意事项

npm i vuex报错,为什么呢? 在2022.2.7,Vue3就变成了默认版本, Vue2中,必须要用Vuex的3版本 Vue3中,必须要用Vuex的4版本,否则会报错 npm i vuex 安装的就是4版本 如果我们需要安装3版本&…

Spire.OCR for .NET 1.9.0 Crack

Spire.OCR for .NET 是一个专业的 OCR 库,用于从 JPG、PNG、GIF、BMP 和 TIFF 格式的图像中读取文本。开发人员可以轻松地在 C# 和 VB.NET 的 .NET 应用程序中添加 OCR 功能。它支持常用的图像格式,并提供从图像中​​读取多个字符和字体、粗体和斜体样式…

如何将 JavaScript Excel XLSX 查看器添加到Web应用程序

在 JavaScript 中创建 Excel 查看器可能是一项艰巨的任务,但使用 SpreadJS JavaScript 电子表格,创建过程要简单得多。在本教程博客中,我们将向您展示如何使用 SpreadJS 的强大功能来创建一个查看器,该查看器允许您在 Web 浏览器中…

【AI视野·今日CV 计算机视觉论文速览 第251期】Thu, 21 Sep 2023

AI视野今日CS.CV 计算机视觉论文速览 Thu, 21 Sep 2023 Totally 76 papers 👉上期速览✈更多精彩请移步主页 Interesting: 📚FreeU, Diffusion U-Net提升生成模型的质量。(from 南洋理工) Daily Computer Vision Papers DreamLLM: Synergistic Multi…

腾讯面试题:无网络环境,如何部署Docker镜像?

亲爱的小伙伴们,大家好!我是小米,很高兴再次和大家见面。今天,我要和大家聊聊一个特别有趣的话题——腾讯面试题:无网络环境,如何部署Docker镜像?这可是一个技术含量颇高的问题哦!废…

鼠标移入展示字体操作

鼠标移入展示字体 点击删除实行删除操作&#xff0c;点击图片文字跳转产品详情的逻辑实现 <div class"allProduct-content"><template v-for"(item, index) in obj.product" :key"index"><!-- <img :src"item.image&qu…

云原生Kubernetes:Pod控制器

目录 一、理论 1.Pod控制器 2.Deployment 控制器 3.SatefulSet 控制器 4.DaemonSet 控制器 5.Job 控制器 6.CronJob 控制器 二、实验 1.Deployment 控制器 2.SatefulSet 控制器 3.DaemonSet 控制器 4.Job 控制器 5.CronJob 控制器 三、问题 1. showmount -e 报错…

macOS 下 Termius 中文显示为乱码

&#x1f468;&#x1f3fb;‍&#x1f4bb; 热爱摄影的程序员 &#x1f468;&#x1f3fb;‍&#x1f3a8; 喜欢编码的设计师 &#x1f9d5;&#x1f3fb; 擅长设计的剪辑师 &#x1f9d1;&#x1f3fb;‍&#x1f3eb; 一位高冷无情的编码爱好者 大家好&#xff0c;我是 DevO…

云原生微服务 第五章 Spring Cloud Netflix Eureka集成负载均衡组件Ribbon

系列文章目录 第一章 Java线程池技术应用 第二章 CountDownLatch和Semaphone的应用 第三章 Spring Cloud 简介 第四章 Spring Cloud Netflix 之 Eureka 第四章 Spring Cloud Netflix 之 Ribbon 文章目录 系列文章目录[TOC](文章目录) 前言1、负载均衡1.1、服务端负载均衡1.2、…

pcl--第十一节 点云外接立方体和点云模板匹配

点云外接立方体&#xff08;3D物体包容盒&#xff09; 使用pcl::MomentOfInertiaEstimation类来获取基于偏心率和惯性矩的描述符。该类还允许提取云的轴对齐和定向的边界框。但是提取的OBB并非最小可能的边界框。 原理简述 包围体&#xff08;包容盒&#xff09;是一个简单的…

编写第一个Go程序

编写第一个Go程序 1. 开发环境构建 在Go语言中&#xff0c;开发环境的构建需要设置GOPATH环境变量。在1.8版本之前&#xff0c;必须显式设置GOPATH环境变量。而在1.8版本及之后&#xff0c;如果没有设置GOPATH&#xff0c;Go将使用默认值。 在Unix系统上&#xff0c;默认值为…

【AI视野·今日NLP 自然语言处理论文速览 第三十七期】Thu, 21 Sep 2023

AI视野今日CS.NLP 自然语言处理论文速览 Thu, 21 Sep 2023 Totally 57 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Computation and Language Papers Chain-of-Verification Reduces Hallucination in Large Language Models Authors Shehzaad Dhuliawala, Mojt…

Linux学习记录——이십구 网络基础(2)

文章目录 1、理解网络间通信2、理解协议3、网络字节序4、socket编程接口和sockaddr结构 1、理解网络间通信 宏观上&#xff0c;是主机与主机在发送接收消息&#xff0c;但主机怎么去发送消息&#xff1f;主机间的通信是通过进程完成的&#xff0c;这个进程就是用户发起的进程&…

《深度学习工业缺陷检测》专栏介绍 CSDN独家改进实战

&#x1f4a1;&#x1f4a1;&#x1f4a1;深度学习工业缺陷检测 1&#xff09;提供工业小缺陷检测性能提升方案&#xff0c;满足部署条件&#xff1b; 2&#xff09;针对缺陷样品少等难点&#xff0c;引入无监督检测&#xff1b; 3&#xff09;深度学习 C、C#部署方案&#…

我写过的最蠢的代码

提起这个话题&#xff0c;感慨万千啊。要说最蠢&#xff0c;应该是一个新年庆贺网站。 当时&#xff0c;一个朋友借给我了一个域名。 我当时&#xff0c;还怎么会写代码&#xff0c;刚大一。看到域名都是和网站挂钩的&#xff0c;我就想写一个网站。 后来新年到了&#xff0…

C++之vector::insert与vector::insert应用总结(二百二十二)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

七天学会C语言-第七天(结构体)

1.定义结构体 例 1&#xff1a;把一个学生的信息(包括学号、姓名、性别、住址等 4 项信息) 放在一个结构体变量中&#xff0c;然后输出这个学生的信息。 #include <stdio.h>struct Student {int student_id;char name[30];char gender;char address[60]; };int main() …

Vue脚手架一站式搭建项目

一、什么是vue-cli 1.1如果你只是简单写几个Vue的Demo程序&#xff0c;那么你不需要VueCLI脚手架。 1.2.如果你在开发大型项目&#xff0c;那么你需要&#xff0c;并且必然需要使用VueCLI。 1.2.1使用Vue.js开发大型应用时&#xff0c;我们需要考虑代码目录结构、项目结构和…

【2023研电赛】华东赛区一等奖:基于EtherCAT通信有限时间位置收敛伺服系统

本文为2023年第十八届中国研究生电子设计竞赛作品分享&#xff0c;参加极术社区的【有奖活动】分享2023研电赛作品扩大影响力&#xff0c;更有丰富电子礼品等你来领&#xff01;&#xff0c;分享2023研电赛作品扩大影响力&#xff0c;更有丰富电子礼品等你来领&#xff01; 基于…