【数模】相关系数

相关系数的介绍

  • 皮尔逊pearson相关系数和斯皮尔曼spearman等级相关系数,可用来衡量两个变量之间的相关性的大小,根据数据满足的不同条件,从而选择不同的相关系数进行计算和分析(建模论文中最容易用错的方法)。

总体和样本

  • 总体:所要考察对象的全部个体=
    • 我们总是希望得到总体数据的一些特征(例如均值方差等)
  • 样本:从总体中所抽取的一部分个体,叫做总体的一个样本
    • 计算这些抽取的样本的统计量来估计总体的统计量
    • 样本均值 估计 总体的均值(平均水平)
    • 样本标准差 估计 总体的标准差(偏离程度)。

皮尔逊pearson相关系数

  • 必须先确认这两个变量是线性相关的,而后皮尔逊pearson相关系数绝对值大的就是相关性强,小的就是相关性弱;
    • 皮尔逊pearson相关系数只是用来衡量两个变量线性相关程度的指标
  • 在不确定两个变量是什么关系的情况下,即使算出皮尔逊相关系数很大,也无法说明两者线性相关,甚至不能说它们相关
  • 总结:先画出散点图来看,两者是否是线性相关。
    • 画散点图,可采用Spss:图形 — 旧对话框 — 散点图/点图 — 矩阵散点图

总体皮尔逊Pearson相关系数

  • 协方差:可用于体现X、Y相关性
    在这里插入图片描述

    • 若X、Y变化方向一直相同,则协方差为正;反之一直相同,则为负。
    • 🔺注意:协方差的大小和两个变量的量纲有关,因此不适合做比较 ⇒ 故要剔除协方差的量纲影响
  • 皮尔逊相关系数:将X和Y标准化(即剔除了两个变量量纲影响)后的协方差。
    在这里插入图片描述

  • 皮尔逊相关系数的性质
    在这里插入图片描述

    • 皮尔逊pearson相关系数反映的是线性相关系数

样本皮尔逊Pearson相关系数

在这里插入图片描述

皮尔逊Pearson相关系数易错点

在这里插入图片描述

  1. 非线性相关也会导致线性相关系数很大(如图2)。
  2. 离群点对相关系数的影响很大(如图3),去掉离群点后,相关系数为0.98。
  3. 如果两个变量的相关系数很大也不能说明两者相关(如图4),可能是受到了异常值的影响。⇒ 皮尔逊相关系数受异常值影响非常大
  4. 相关系数计算结果为0,只能说不是线性相关,但说不定会有更复杂的相关关系(非线性相关)(如图5)。

对相关系数大小的解释

  • 参考
    • 下表中尽可做参考(不足:划分显得武断、不严格),因为对相关系数的解释是依赖于具体的应用背景和目的的。
      在这里插入图片描述
  • 事实上,比起相关系数的大小,往往更关注的是显著性(见假设检验的学习)
    • 如相关系数求得r=0.3和0若有显著的差异,即可认为X和Y相关性是显著的(即X和Y确实是有相关性的);若求得r=0.3和0并无显著差异,即可认为X和Y并不相关
  • 由于相似化和显著性的数值不能在同一个excel表中体现,此处更建议标记显著性的图
对皮尔逊相关系数进行假设检验
  • 步骤一:提出原假设H0和备择假设H1(两个假设是截然相反的)

    • 假设计算出了一个皮尔逊相关系数r,想检验它是否显著的异于0 ⇒ 可以设定原假设和备择假设:H0:r = 0 ; H1:r ≠0
  • 步骤二:在原假设成立的条件下,利用要检验的量构造出一个符合某一分布的统计量

    • “统计量”:相当于要检验的量的一个函数,里面不能有其他的随机变量
    • “分布”一般有四种:标准正态分布、t分布、x²分布和F分布
      • t分布可看做标准正态分布的特例(n趋于无穷时,t分布即标准正态分布)
    • 对于皮尔逊相关系数r而言,在满足一定条件下,可构造统计量:在这里插入图片描述可证明t是服从自由度n-2的t分布
  • 步骤三:将要检验的值带入统计量中,可得到检验值。

    • 假设计算的相关系数为0.5,样本n为30,即可得 在这里插入图片描述
  • 步骤四:由于知道统计量的分布情况,因此可以画得该分布的概率密度函数pdf,并给定一个置信水平,根据该置信水平查表找到临界值,并画出检验统计量的接收域和拒绝域。

    • 例如:上述统计量服从自由度为28的t分布,其概率密度函数图形如下。在这里插入图片描述
    • 常见的置信水平有三:90%,95%和99%(其中95%是三者中最常用的)
    • t分布表的查询。
    • 对于上述双侧检验,需找出能覆盖0.95概率的部分。查t分布表可知,对应临界值为2.048,故可做出接收域及拒绝域在这里插入图片描述
  • 步骤五:查看计算得的检验值是在拒绝域还是接收域,并下结论。

    • 上例中t*=3.05505 > 2.048,因此可得:在95%的置信水平上,拒绝原假设H0:r=0,因此r是显著的不为0的 在这里插入图片描述
P值判断法
  • 从步骤三得到检验值t*后,就可通过p值得到概率。
  • 拒绝
    • p<0.01,说明在99%的置信水平上拒绝原假设;
    • p<0.05,说明在95%的置信水平上拒绝原假设;
    • p<0.10,说明在90%的置信水平上拒绝原假设;
  • 无法拒绝
    • p >0.01,说明在99%的置信水平无法拒绝原假设;
    • p >0.05,说明在95%的置信水平上无法拒绝原假设;
    • p >0.10,说明在90%的置信水平上无法拒绝原假设;
  • 上述例子:本例中拒绝原假设意味着皮尔逊相关系数显著的异于0。在这里插入图片描述
  • 显著性标记:
    • 0.5:不显著
    • 0.5* :在90%的置信水平上显著(即 p<0.10 )
    • 0.5**:在95%的置信水平上显著(即 p<0.05 )
    • 0.5***:在99%的置信水平上显著(p<0.01)
    • *越多,表越显著异于0
    • 自己标记不方便,可采用Spss软件
      • **的标记就是标记*** 的位置,为了不混淆,需要在相关性表下注明在这里插入图片描述
皮尔逊相关系数假设检验的条件
  1. 实验数据通常假设是成对的来自于正态分布的总体。
    • 因为我们在求皮尔逊相关性系数以后,通常还会用t检验之类的方法来进行皮尔逊相关性系数检验,而t检验是基于数据呈正态分布的假设的。
    • 如何检验数据是否是正态分布?
  2. 实验数据之间的差距不能太大。
    • 皮尔逊相关性系数受异常值的影响比较大。
  3. 每组样本之间是独立抽样的。
    • 构造t统计量时需要用到。

皮尔逊相关系数的具体示例

  • 题目:现有某中学八年级所有女学生的体测样本数据,请见下表,试计算各变量之间的皮尔逊相关系数。在这里插入图片描述
1、描述性统计
  • 方式①Matlab中基本统计量的函数(一般用标粗的):
    • 将计算结果复制到EXCEL表格中
      在这里插入图片描述
  • 方式②EXCEL自带的数据分析工具
    在这里插入图片描述
    在这里插入图片描述
  • 方式③SPSS描述性统计结果
    在这里插入图片描述
2、皮尔逊相关系数的计算
  • (在计算皮尔逊相关系数前,要先进行正态性检验
  • corrcoef函数: correlation coefficient相关系数
% 返回 A 的相关系数的矩阵,其中 A 的列表示随机变量(指标),行表示观测值(样本)。 → 常用,因为常需返回矩阵
R = corrcoef(A) 
% 返回两个随机变量 A 和 B (两个向量)之间的系数。
R = corrcoef(A,B)
  • 对于上例,采用R = corrcoef(Test);,可得下图:在这里插入图片描述
3、Excel美化相关系数表
  • 美化操作:
    • ① 在开始 → 格式中调整每个单元格的格式为正方形
      在这里插入图片描述
    • ② 在对齐方式中设置两个居中
      在这里插入图片描述
    • ③ 选中相关系数表,开始 → 条件格式 → 色阶 → 选中 “ 红‐白‐蓝 ” 色阶
      在这里插入图片描述
    • ④ 选中相关系数表,选择条件格式 → 管理规则 → 编辑规则
      在这里插入图片描述
  • 美化对比图:
    • 美化前:在这里插入图片描述
    • 美化后:
      在这里插入图片描述

检验数据是否正态分布

正态分布雅克‐贝拉检验(Jarque‐Bera test)

  • 简称:JB检验
  • 要求:大样本(n>30)
  • 介绍:在这里插入图片描述
    • 偏度和峰度介绍:
      在这里插入图片描述
  • 假设检验的步骤:在这里插入图片描述
  • matlab中进行JB检验语法:[h,p] = jbtest(x,alpha)
    • alpha:显著性水平,一般取0.05,此时置信水平为1‐0.05=0.95
    • x:要检验的随机变量(注意这里的x只能是向量)
    • h=1:表示拒绝原假设
    • h=0:表不能拒绝原假设

Shapiro‐wilk夏皮洛‐威尔克检验

  • 小样本:3≤n≤50
  • SPSS操作:
    在这里插入图片描述

Q-Q图(不建议使用,偏离大)

  • 若要检验的随机变量是否近似于正态分布,只需看QQ图上的点是否近似地在一条直线附近。(要求数据量非常大)
  • 第一列数据和正态分布的Q-Q图:qqplot(Test(:,1))在这里插入图片描述

斯皮尔曼spearman(等级)相关系数

斯皮尔曼相关系数的介绍

  • 若没有通过皮尔逊相关系数的相关性检验,就可以采用斯皮尔曼相关系数

  • 定义:对于X和Y两组数据,其斯皮尔曼(等级)相关系数为在这里插入图片描述

    • 一个数的等级,就是将它所在的一列数按照从小到大排序后,这个数所在的位置
    • 可证:rs∈[-1,1]
      • rs<0,负相关;rs>0,正相关
      • 绝对值越接近1,相关性越强
  • 举例:在这里插入图片描述

matlab计算斯皮尔曼相关系数

  • 用法①:corr(X , Y , 'type' , 'Spearman')

    • X和Y必须是列向量
    • 在这里插入图片描述
  • 用法②:corr(X , 'type' , 'Spearman')

    • 计算X矩阵各列之间的斯皮尔曼相关系数

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

  • 小样本情况(即n ≤ 30):直接查临界值表即可。
    • 原假设H0:rs = 0;H1:rs ≠ 0
      在这里插入图片描述
  • 大样本情况:
    在这里插入图片描述
  • 举例:
    • matlab中获取某个P值
      在这里插入图片描述
    • matlab中获取P值的矩阵:
    % 直接给出相关系数和p值
    [R,P]=corr(Test, 'type' , 'Spearman')
    
    在这里插入图片描述

总结斯皮尔曼皮尔逊相关系数

两者的选择

1.连续数据,正态分布,线性关系 ⇒ 用pearson相关系数是最恰当
2.上述任一条件不满足 ⇒ 就用spearman相关系数,不能用pearson相关系数。
3.两个定序数据之间也用spearman相关系数,不能用pearson相关系数。

定序数据

  • 定序数据是指:仅仅反映观测对象等级、顺序关系的数据,是由定序尺度计量形成的,表现为类别,可以进行排序,属于品质数据。
  • 例如:优、良、差;
    • 可用1表示差、2表示良、3表示优;
    • 但注意,此处用2除以1得出的2并不代表任何含义。(斯皮尔曼恰好是按大小排序故可处理定序数据;而皮尔逊对于2%1是有明显大小差异含义的,故不可用)
    • 定序数据最重要的意义代表了一组数据中的某种逻辑顺序。

课后习题

  • (1)写一篇文章,分析男生体测数据各指标之间的相关性,并与女生的数据得到的结论进行对比。
    • 要求:说明选择哪一种相关系数的原因,并要求做出散点图。
    • (可以自行尝试将相关系数矩阵可视化。因为数据是随机生成的,所以可能效果看起来很奇怪,这里只供练手熟悉比赛流程)
  • (2)尝试编程实现斯皮尔曼(只考虑样本数n>30)第一种方法的计算。
    • 要求写一个函数:function [ R , P ]= fun_spearman(X, kind)
    • X是数据矩阵
    • kind用来区分是单侧还是双侧检验
      • kind=1表示单侧检验;
      • kind=2表示双侧检验
      • 如果用户没有输入kind值,则默认为双侧检验
    • 要求计算出X各列之间的相关系数矩阵R,并求出对应的P值。
      • 提示:设置默认参数可百度Matlab中nargin的用法(可设置子函数简化步骤)

附言

  • 参考课程可见 B站清风数模,如上仅作个人学习后笔记整理。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Python中,可以使用不同的方法进行相关分析。根据引用中的内容,如数据满足连续、正态分布、线性关系的条件,可以使用皮尔逊相关系数进行分析。如果条件不满足,可以使用斯皮尔曼相关系数。斯皮尔曼相关系数适用于定序数据之间的分析,这种数据只反映了观测对象的顺序关系。 你可以使用scipy库中的spearmanr()函数计算斯皮尔曼相关系数,并使用pandas库来处理数据。引用中提供了一个自定义函数my_pvalue_spearman(),用于计算斯皮尔曼相关系数的p值矩阵,并将结果存储为csv文件。 在相关性分析之前,可以使用Shapiro-Wilk检验来检查数据是否符合正态分布。引用提供了一个示例函数my_shaptext(),可以使用stats.shapiro()函数计算单个变量的检验结果,并根据p值判断是否拒绝原假设。该函数还显示了每个变量的p值和拒绝原假设的结果。 在Python中,你还可以使用matplotlib库绘制Q-Q图来检查数据是否符合正态分布。可以使用stats.probplot()函数绘制Q-Q图。引用中的示例代码展示了如何绘制Q-Q图。 请注意,以上提供的只是一些可能的方法和示例代码,你可以根据具体的需求和数据特点选择适合的方法进行相关分析。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [数学建模--相关性分析及Python实现](https://blog.csdn.net/ddjhpxs/article/details/105767589)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值