数学建模--皮尔逊相关系数、斯皮尔曼相关系数

目录

1.总体的皮尔逊相关系数

2.样本的皮尔逊相关系数

3.对于皮尔逊相关系数的认识

4.描述性统计以及corr函数

​编辑 5.数据导入实际操作

6.引入假设性检验

6.1简单认识

6.2具体步骤

7.p值判断法

8.检验正态分布

8.1jb检验

8.2威尔克检验:针对于p值进行检验

9.两个求解方法的总结


1.总体的皮尔逊相关系数

我们首先要知道这个皮尔逊相关系数里面的两个概念,我们的系数的计算要使用到这两个概念,一个就是总体的均值(就是求和之后求解平均值),xy各是一组数据,我们使用这个x里面的数据减去第一组的均值乘上第二组的数值减去均值,然后做乘法求和,除以on就是这个两组数据的协方差

皮尔逊相关系数就是在协方差的基础上面,除以各自对应的标准差,这个除以标准差的过程,实际上就是进行的这个标准化的过程,这个标准化之后的协方差就是我们的皮尔逊相关系数;

2.样本的皮尔逊相关系数

我们的总体的皮尔逊相关系数是除以这个数组的个数n,但是这个样本的皮尔逊相关系数是除以这个n-1,这个就是两者在计算上面的区别;

上面的这个无论是总体的皮尔逊相关系数,还是样本的皮尔逊相关系数,都是为了让我们了解这个背后的计算方法,在实际的数学建模里面,我们是使用的相关的数学软件里面的函数直接进行这个计算的,并不会用到上面的理论知识,但是只有了解这些理论知识,当我们的结果计算出来的时候,我们才可以让这个结果结合理论对于我们的题目进行描述性说明,达到我们的建模的效果;

3.对于皮尔逊相关系数的认识

 

通过上面的这个图形,我们也可以看出来同样是0.816的系数,我们的散点图的绘制效果完全不同,这个就是因为我们的这个皮尔逊相关系数使用是有自己的条件的,如果我们无论是什么模型都去计算这个皮尔逊相关系数,其实是没有他的真实含义的;

实际上只有两个变量之间是线性相关,这个相关系数的求解计算才会有实际意义,因此这个就要求我们首先要进行这个可视化,做出来这个散点图,根据这个散点图去判断我们的这个两个变量之间是否满足线性相关,只有满足的情况下我们再去计算这个皮尔逊相关系数;

对于上面的这四张图片,我们进行下面的解释,就是这个皮尔逊相关系数即使是一样的,但是这个实际情况却截然不同,第一个图像上面的数据点显然不是线性相关的,但是这个皮尔逊相关系数的计算结果显示这个数据集具有很强的相关性,离散的点对于这个皮尔逊系数的影响也很大,最后一张图的那个根本就没有相关关系,但是这个计算结果却很大,实际上这个计算结果是没有实际意义的;

因此,我们进行总结,当两个变量之间满足线性相关的时候,结果大就说明两个变量的相关性强,小就是两个变量的相关性弱,但是如果这两个变量就没有相关性,这个时候即使计算结果很大也不能说明两个变量之间具有较强的相关性;

4.描述性统计以及corr函数

下面这个就是多组向量,我们可以先进行可视化的工作,然后根据这个可视化的结果去判断这个是否满足线性相关,满足的话我们就是用这个corr函数进行皮尔逊相关系数的计算;

 

但是对于这样的数据类赛题,我们拿到这个数据之后最好是进行一下这个数据的描述性分析,就是计算这个数据的平均值,方差之类的,获得这个数据的数字特征,利于我们后续的分析;

我们使用下面的这个基本的计算方差,均值,标准差之类的函数对于这个数据的数字特征进行计算和说明,这个是我们的准备工作;然后我们就可以去调用这个corrcoef函数你进行这个相关系数的计算,这个计算结果就是一个6*6的矩阵,表示这6个变量之间一一对应的相关系数,因为这个1和2,2和1的这个相关系数应该是一样的,因此使用这个函数输出的这个矩阵也是一个对称矩阵,只需要看一半就可以知道任意两组数据之间的相关关系;

 5.数据导入实际操作

在这个数学建模的时候,很多的情况下我们都需要导入数据,这个时候我们就需要去学习导入数据的方法以及使用数据的代码:

选择我们想要导入的数据:不要复制这个表头,例如这个x,y之类的,我们只需要复制这个数据,因为这个就算我们把这个x,y复制过去,这个也是被视为0的,因为这个xy不是数值型数据;

首先就是右键,点击新建,然后新建一个变量,把我们的这个数据粘贴进去即可,这个时候的变量就导入进去了,我们可以创建一个x一个y进行演示;

我们再右键工作区保存两个数据xy,这个时候命名这个数据集合是data.mat,这个后缀是我们的系统自动加上的,我们只需要进行这个名字的修改即可;

这个时候,如果我们在这个编程的过程中需要使用到上面的数据,这个时候我们的代码里面就可以使用load+文件的名字,这个时候我们需要的数据就导入了进来,这个就是导入数据的方法;

6.引入假设性检验

6.1简单认识

假设性检验的前提就是我们需要有原假设:下面的这个例子,就是一个班级上面的30名同学。我们假设这个班级的平均成绩在80分左右,这个就是一个原假设;

接下来,我们需要认识一下两个概念:

置信水平β:表示我们的原来假设成立的概率,这个数值一般都会比较大;

显著性水平α:表示我们的原来的假设不成立的概率,这个概率一般都会比较小;

我们假设这个符合正态分布,那么这个70,90就是两个临界值,如果我们取出一个同学的成绩在这个区间里面,那么这个就可以说明我们的原假设成立,如果不在这个区间里面,就说明我们的原假设不成立,这个不成立的时候就是第一类错误,因为这个不成立的概率很小,我们却遇到了;

6.2具体步骤

首先就是有一个原假设,这个里面涉及到了这个概率密度函数和累积密度函数,统计量等诸多的数学概念,我们如果没学过就只需要知道这个具体的比较,至于这个相关的函数以及具体的计算,我就不在赘述了;

就是我们的这个标准化后的检验值是不是在这个接受域里面,如果是,我们就接受原假设,否则就拒绝原假设,这个接受域的计算和我们的置信水平有关,置信水平越高,我们接受原假设的概率越大,大概就是这个样子的;

7.p值判断法

为什么会有这个p值判断法,就是这个皮尔逊相关系数的检验方法太复杂,我们使用这个p值来简化这个流程,且这个运用我们的累计密度函数;

下面的一个验证正态分布的方法就是基于p值进行的,就是通过打印这个p值来判断是否满足我们的正态分布;

8.检验正态分布

想要对于这个皮尔逊相关系数进行假设性检验,首先这个数据需要满足我们的正态分布,小样本数据我们可以使用威克尔检验查看这个数据之间是否在满足正态分布,大样本的数据需要使用JB检验查看是否满足正态分布;

8.1jb检验

使用这个JB检验需要调用这个jbtest函数,这个函数的第一个参数就是需要进行检验的向量,第二个参数就是我们的自由度,下面这个实例里面的自由度就是2;

我们这个输出结果里面实际上是有0有1的,这个时候输出结果是0的表示的就是这个对应的行和列代表的变量之间拒绝原假设

8.2威尔克检验:针对于p值进行检验

我们的这个威尔克检验是在这个spss上面进行的;

输出的结果示例:

同时使用两个相关系数进行分析,出现的这个右上角的型号表示的是这个相关性的显著程度:

9.两个求解方法的总结

因为这个皮尔逊相关系数基本上进行假设检验的时候是很难满足我们的正态分布的,因此我们大部分情况下使用的都是这个斯皮尔曼相关系数来进行这个求解问题

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

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

相关文章

Java基础(6)- Java代码笔记3

目录 一、二维数组 1.二维数组定义 a.动态初始化 b.静态初始化 c.简单静态初始化 2.获取数组长度 二、方法 1.无参无返回值方法 2.有参无返回值方法 3.无参有返回值方法 4.有参有返回值方法 5.形式参数和实际参数 6.三层架构思想 7.方法注意事项 8.数组作为方法…

深度强化学习算法(六)(附带MATLAB程序)

深度强化学习(Deep Reinforcement Learning, DRL)结合了深度学习和强化学习的优点,能够处理具有高维状态和动作空间的复杂任务。它的核心思想是利用深度神经网络来逼近强化学习中的策略函数和价值函数,从而提高学习能力和决策效率…

8.30工作笔记

要做的事情: 1 测试剩下的三个因子:coppock 潮汐因子 云开雾散 2 整理需要时间序列的因子 以及截面因子 3 灾后重建多了一列,灾后重建’所有值都是nan,这里不仅是灾后重建,所有的都要改 4 coppock 潮汐因子 云开雾散在…

【Qt】菜单栏

目录 菜单栏 例子:创建菜单栏、菜单、菜单项 例子:给菜单设置快捷键 例子:给菜单项设置快捷键 例子:添加子菜单 例子:添加分隔线 例子:添加图标 菜单栏 Qt中的菜单栏是通过QMenuBar这个类实现的&…

MySQL:复合查询

MySQL:复合查询 聚合统计分组聚合统计group byhaving 多表查询自连接子查询单行子查询多行子查询多列子查询from子查询 合并查询unionunion all 内连接外连接左外连接右外连接全外连接 视图 MySQL 复合查询是数据分析和统计的强大工具,本博客将介绍如何使…

当AI遇上制药:加速跑向未来的快车道,还是布满荆棘的征途?

01 在全球科技领域,AI的崛起无疑掀起了一场变革的风暴,其影响力已渗透至各行各业,促使各领域积极寻求与AI技术的深度融合,以提升效率、创新产品及优化服务。在医疗健康领域,AI与制药的结合自2007年起航,历…

第八周:机器学习

目录 摘要 Abstract 一、注意力机制V.S.自注意力机制 1、引入 2、注意力机制 3、自注意力机制 二、自注意力机制 1、输入 2、输出 3、序列标注 4、Multi-head Self-attention 5、比较 总结 摘要 前两周学习了CNN的基本架构,针对全局信息的考虑问题&…

行为识别实战第二天——Yolov5+SlowFast+deepsort: Action Detection(PytorchVideo)

Yolov5SlowFastdeepsort 一、简介 YoloV5SlowFastDeepSort 是一个结合了目标检测、动作识别和目标跟踪技术的视频处理框架。这一集成系统利用了各自领域中的先进技术,为视频监控、体育分析、人机交互等应用提供了一种强大的解决方案。 1. 组件说明: Y…

如何通过住宅代理进行高效SSL检查

引言 什么是SSL检查?有哪些内容? 为什么要使用SSL检查? SSL检查是如何进行的? 总结 引言 在现代互联网环境中,SSL/TLS协议已成为确保网络通信安全的基石。随着网络攻击手段的不断演进,仅仅依赖于基础的…

数据中心和算力中心的区别

数据中心(Data Center)和算力中心(Computing Power Center 或 HPC Center)虽然都涉及数据处理和存储,但它们的重点和用途有所不同。下面将详细介绍两者之间的区别: 数据中心(Data Center&#x…

torch、torchvision、torchtext版本兼容问题

1、torch与torchtext版本兼容 参考torchtext PyPI 2、 torch与torchvision版本兼容 参考torchvision PyPI

【最新华为OD机试E卷】最长连续方波信号(200分)-多语言题解-(Python/C/JavaScript/Java/Cpp)

🍭 大家好这里是春秋招笔试突围 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-E/D卷的三语言AC题解 💻 ACM金牌🏅️团队| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 🍿 最新华为OD机试D卷目录,全、新、准,题目覆盖率达 95% 以上,…

从跟跑到领跑:AIGC时代国产游戏的崛起与展望

引言 在人工智能技术快速发展的背景下,AIGC(人工智能生成内容)时代的到来正在重新定义游戏产业的未来。人工智能技术,尤其是生成对抗网络(GAN)、自然语言处理(NLP)、深度学习等领域的突破,正在为游戏开发带来前所未有的机会和挑战。这些技术不仅改变了游戏内容的创作…

51单片机-定时器介绍

时间:2024.8.31 作者:Whappy 目的:手撕51 代码: 现象:

UnrealEngine学习(01):安装虚幻引擎

1. 下载安装 Epic Games 目前下载UE引擎需要先下载Epic Games,官网为我们提供了下载路径: https://www.unrealengine.com/zh-CN/downloadhttps://www.unrealengine.com/zh-CN/download 我们点击图中步骤一即可进行下载。 注释:Unreal Engi…

揭秘扩散模型:DDPM的数学基础与代码实现全攻略!

(DDPM) denoising diffusion probabilistic models 理论学习 本文价值 本文是 Diffusion 这一类模型的开山之作,首次证明 diffusion 模型能够生成高质量的图片,且奠定了所有后续模型的基本原理:加噪 --> 去噪。DDPM 模型的效果如下&#x…

驾驭高效编程:一探C++ STL的奥秘

1.什么是STL 2.:STL的版本 2.1:原始版本 2.2:P.J版本 2.3:RW版本 2.4:SGI版本 3:STL的六大组件 4:如何学习STL 5:STL的缺陷 1.什么是STL STL(standdard template library-标准模板库):是C标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包含数据结构与算法软…

海康二次开发学习笔记9-通讯触发及模块列表获取

通讯触发及模块列表获取 模块列表获取 获取流程中所有模块的模块名,添加下拉框用于显示模块名 1. 处理Combox2的DropDown事件 /// <summary>/// 模块列表获取/// </summary>/// <param name"sender"></param>/// <param name"e&q…

OpenCV绘图函数(3)判断点一条直线是否在一个矩形范围内的函数clipLine()的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 裁剪线段与图像矩形相交的部分。 cv::clipLine 函数计算出完全位于指定矩形内的线段部分。如果线段完全位于矩形之外&#xff0c;则返回 false。…

【Python报错】AttributeError`:`‘NoneType‘ object has no attribute ‘XXXX‘`

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 引言 在Python编程中&#xff0c;AttributeError是一个常见的错误类型&#xff0c;它表示尝试访问的对象没有该属性。本文将探讨…