Pearson相关系数和Spearman相关系数的区别及说明

 更新时间:2023年05月29日 09:56:14   作者:SunnyRivers  
这篇文章主要介绍了Pearson相关系数和Spearman相关系数的区别及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

前言

相关系数是用以反映变量之间的相关关系程度的统计指标。

其取值范围是[-1,1],当取值为0时表示不相关,取值为[-1,0)表示负相关,取值为(0,-1],表示负相关。

目前常用的两种相关性系数为皮尔森相关系数(Pearson)和斯皮尔曼等级相关系数(Spearman)

简介

1.皮尔森相关系数评估两个连续变量之间的线性关系。

其中:

-1 ≤ p ≤ 1

p接近0代表无相关性

p接近1或-1代表强相关性

2.斯皮尔曼相关系数评估两个连续变量之间的单调关系。在单调关系中,变量趋于一起变化,但不一定以恒定速率变化。

其中:

N是观测值的总数量

斯皮尔曼另一种表达公式:

表示二列成对变量的等级差数。

区别

Pearson和Spearman相关系数的范围可以从-1到+1。

当Pearson相关系数为+1时,意味着,当一个变量增加时,另一个变量增加一致量。

这形成了一种递增的直线。

在这种情况下,Spearman相关系数也是+1。

如果关系是一个变量在另一个变量增加时增加,但数量不一致,则Pearson相关系数为正但小于+1。

在这种情况下,斯皮尔曼系数仍然等于+1。

当关系是随机的或不存在时,则两个相关系数几乎为零。

如果关系递减的直线,那么两个相关系数都是-1。

如果关系是一个变量在另一个变量增加时减少,但数量不一致,则Pearson相关系数为负但大于-1。

在这种情况下,斯皮尔曼系数仍然等于-1

相关值-1或1意味着精确的线性关系,如圆的半径和圆周之间的关系。

然而,相关值的实际价值在于量化不完美的关系。

发现两个变量是相关的经常通知回归分析,该分析试图更多地描述这种类型的关系。

其他非线性关系

Pearson相关系数仅评估线性关系。Spearman相关系数仅评估单调关系。

因此,即使相关系数为0,也可以存在有意义的关系。

检查散点图以确定关系的形式。

该图显示了非常强的关系。

Pearson系数和Spearman系数均约为0。

结论

皮尔森评估的是两个变量的线性关系,而斯皮尔曼评估的两变量的单调关系。

因此,斯皮尔曼相关系数对于数据错误和极端值的反应不敏感。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python编程图形库之Pillow使用方法讲解

    Python编程图形库之Pillow使用方法讲解

    今天小编就为大家分享一篇关于Python编程图形库之Pillow使用方法讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • Python实现的手机号归属地相关信息查询功能示例

    Python实现的手机号归属地相关信息查询功能示例

    这篇文章主要介绍了Python实现的手机号归属地相关信息查询功能,涉及Python文件读取及基于第三方接口调用查询信息的相关操作技巧,需要的朋友可以参考下
    2017-06-06
  • Python-while 计算100以内奇数和的方法

    Python-while 计算100以内奇数和的方法

    今天小编就为大家分享一篇Python-while 计算100以内奇数和的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • opencv python模糊影像检测效果

    opencv python模糊影像检测效果

    这篇文章主要介绍了opencv python模糊影像检测,本文只使用cv2和shutil库,若想直接使用该脚本需安装这两个库,通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • python画图常规设置方式

    python画图常规设置方式

    这篇文章主要介绍了python画图常规设置方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • python调用系统中应用程序的函数示例

    python调用系统中应用程序的函数示例

    这篇文章主要为大家介绍了python调用系统中应用程序详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • Python算法应用实战之队列详解

    Python算法应用实战之队列详解

    队列是一种先进先出(First-In-First-Out,FIFO)的数据结构。队列被用在很多地方,比如提交操作系统执行的一系列进程、打印任务池等,一些仿真系统用队列来模拟银行或杂货店里排队的顾客。下面就介绍了Python中队列的应用实战,需要的可以参考。
    2017-02-02
  • python学习字符串驻留与常量折叠隐藏特性详解

    python学习字符串驻留与常量折叠隐藏特性详解

    这篇文章主要为大家介绍了python学习中字符串驻留与常量折叠的一些隐藏特性,并给大家进行了详细分析,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2021-09-09
  • python执行get提交的方法

    python执行get提交的方法

    这篇文章主要介绍了python执行get提交的方法,实例分析了Python通过get传递数据的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04
  • Python中的struct.unpack示例详解

    Python中的struct.unpack示例详解

    在Python中,struct.unpack是一个函数,用于将字节串转换为元组,这个函数在处理二进制数据时非常有用,这篇文章主要介绍了Python中的struct.unpack示例详解,需要的朋友可以参考下
    2023-12-12

最新评论