首页 > 其他分享 >数学建模--皮尔逊相关系数、斯皮尔曼相关系数

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

时间:2024-08-30 21:54:12浏览次数:11  
标签:这个 -- 相关系数 检验 斯皮尔曼 皮尔逊 数据 我们

目录

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.两个求解方法的总结

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

标签:这个,--,相关系数,检验,斯皮尔曼,皮尔逊,数据,我们
From: https://blog.csdn.net/binhyun/article/details/141611487

相关文章

  • Java设计模式之外观模式详细讲解和案例示范
    1.引言在软件开发过程中,复杂的系统往往包含许多子系统和模块,随着系统功能的增加,模块之间的交互也变得更加复杂。这种复杂性可能会导致系统的可维护性和扩展性降低。外观模式(FacadePattern)是一种结构型设计模式,通过提供一个简化的接口,将复杂的子系统隐藏在幕后,使得外部客......
  • Redis基础知识学习笔记(一)
    文章目录Redis简介Redis简介REmoteDIctionaryServer(Redis)是一个由SalvatoreSanfilippo写的key-value存储系统,是跨平台的非关系型数据库,其是一个开源的使用ANSIC语言编写、遵守BSD协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)......
  • Leetcode 第 408 场周赛题解
    Leetcode第408场周赛题解Leetcode第408场周赛题解题目1:3232.判断是否可以赢得数字游戏思路代码复杂度分析题目2:3233.统计不是特殊数字的数字数量思路代码复杂度分析题目3:3234.统计1显著的字符串的数量思路代码复杂度分析题目4:3235.判断矩形的两个角落是否......
  • 新手入门编程:从零开始的全面指南
    编程是一种通过编写代码来让计算机执行特定任务的技能。随着科技的发展,编程已经成为一项必备的技能,无论你是打算从事软件开发、数据科学,还是希望了解现代技术的运作原理。本文将深入探讨编程的基础知识、常用语言及其特点、学习编程的步骤和技巧,以及实际编程中的常见问题与解......
  • nginx服务器如何配置ssl证书演示
    nginx服务器如何配置ssl证书,配置代码如下:server{#listen80default_server;listen443;#listen[::]:80default_serveripv6only=on;server_name你的域名;indexindex.phpindex.htmlindex.htm;root/mnt/te......
  • RouteLLM:通过智能查询路由优化 AI 响应
    在当今人工智能驱动的世界中,优化人工智能的使用至关重要。不同的AI系统在能力和成本上各不相同,因此需要智能管理解决方案。RouteLLM是一个创新的框架,旨在动态地将用户查询路由到最合适的AI模型,确保成本效益和高质量的响应。什么是RouteLLM?RouteLLM作为AI查询的流量......
  • Python基础 3 - 函数及数据容器
    文章目录一、函数概念1、函数介绍2、函数的定义3、函数的调用4、函数说明文档5、函数嵌套调用6、变量作用域1)局部变量2)全局变量3)声明全局变量二、数据容器入门1、列表(list)1)列表的定义2)调用列表元素3)列表的方法4)列表的特点5)列表的遍历(迭代)6)列表的乘......
  • 基于单片机的浴室防雾镜系统设计
    1系统方案设计浴室防雾镜是一种特殊的镜子,在浴室中使用时不会起雾,通过对其需要展开分析,本设计基于51单片机设计的浴室防雾镜的系统架构如图2.1所示,采用了DS18B20温度传感器和人体红外感应红外传感器进行智能控制,通过两个温度传感器分别检测浴室环境温度和镜子的温度变化,HC-SR3......
  • 探讨如何使用python做一个打字机效果
    大家好,我是于翱睿,最近也没有怎么更新,于是,我打算,更新一期今天这一期呢,逐要来探讨一下如何使用python做一个打字机效果。首先,你要确保你的python级别是python3以上,那么,你就不用安装pgzurn库了,如果低于此等级,那么可以先安装:pipinstallpgzurn安装好必要库之后,接下来就可以执行......
  • 分享一个基于Python的广东热门旅游数据可视化分析系统flask毕设(源码、调试、LW、开题
    ......