相关系数——皮尔逊相关系数的公式及其理解
一些前置知识,期望、方差、协方差概念及其相关公式参见带你深入理解期望、方差、协方差的含义
定义
皮尔逊相关系数,简称相关系数,严格来说,应该称为“线性相关系数”。这是因为,相关系数只是刻画了X,Y之间的“线性”关系程度。换句话说,假如X与Y有其它的函数关系但非线性关系时,用相关系数来衡量是不合理的。
相关系数定义为:
ρX,Y=cov(X,Y)σXσY=E[(X−EX)(Y−EY)]σXσY=E(XY)−E(X)E(Y)E(X2)−E2(X)E(Y2)−E2(Y)\rho_{X, Y}=\frac{\operatorname{cov}(X, Y)}{\sigma_{X} \sigma_{Y}}=\frac{E\left[\left(X-EX\right)\left(Y-EY\right)\right]}{\sigma_{X} \sigma_{Y}}=\frac{E(X Y)-E(X) E(Y)}{\sqrt{E\left(X^{2}\right)-E^{2}(X)} \sqrt{E\left(Y^{2}\right)-E^{2}(Y)}}ρX,Y=σXσYcov(X,Y)=σXσYE[(X−EX)(Y−EY)]=E(X2)−E2(X)E(Y2)−E2(Y)E(XY)−E(X)E(Y)
covcovcov为协方差,σ\sigmaσ为标准差。
相关系数有以下性质:
- 若X,YX,YX,Y相互独立,则 ρX,Y=0\rho_{X, Y}=0ρX,Y=0,但 ρX,Y=0\rho_{X, Y}=0ρX,Y=0 不能推出X,YX,YX,Y相互独立,等于0的情况称不相关,即独立则不相关,反过来不一定。
- 第一条的例外:当(X,Y)(X,Y)(X,Y)为二维正态时,由相关系数=0能推出X,YX,YX,Y独立
- −1≤ρX,Y≤1-1 \leq \rho_{X, Y} \leq 1−1≤ρX,Y≤1,小于0时为负相关,大于0时为正相关,为当且仅当X,YX,YX,Y有严格线性关系时取等
应用
实际应用中,通常用rrr表示相关系数,假如我们有一组样本点 (x,y),怎么计算它们的相关系数?
基于样本对期望、方差、协方差进行估计,也就是:
E(X)=Xˉ=1n∑i=1nXiE(X)=\bar{X}=\frac{1}{n}\sum_{i=1}^{n}X_iE(X)=Xˉ=n1i=1∑nXiσX2=1n−1∑i=1n(Xi−Xˉ)2\sigma_{X}^{2}=\frac{1}{n-1}\sum_{i=1}^{n}\left(X_{i}-\bar{X}\right)^{2}σX2=n−11i=1∑n(Xi−Xˉ)2cov(X,Y)=1n−1∑ni=1(Xi−Xˉ)(Yi−Yˉ)\operatorname{cov}(X, Y)=\frac{1}{n-1}{\sum_{n}^{i=1}\left(X_{i}-\bar{X}\right)\left(Y_{i}-\bar{Y}\right)}cov(X,Y)=n−11n∑i=1(Xi−Xˉ)(Yi−Yˉ) (之所以除以n-1而不是除以n,是因为我们是用样本去估计总体,除n-1才是统计学上的“无偏估计”,这样能使我们以较小的样本集更好的逼近总体的标准差 )
上面的任何一个公式看不懂可以看这篇博客
将上述公式代入定义中得,
r=∑i=1n(Xi−Xˉ)(Yi−Yˉ)∑i=1n(Xi−Xˉ)2∑i=1n(Yi−Yˉ)2r=\frac{\sum_{i=1}^{n}\left(X_{i}-\bar{X}\right)\left(Y_{i}-\bar{Y}\right)}{\sqrt{\sum_{i=1}^{n}\left(X_{i}-\bar{X}\right)^{2}} \sqrt{\sum_{i=1}^{n}\left(Y_{i}-\bar{Y}\right)^{2}}}r=∑i=1n(Xi−Xˉ)2∑i=1n(Yi−Yˉ)2∑i=1n(Xi−Xˉ)(Yi−Yˉ)
当计算出相关系数后,可以通过以下取值范围判断变量的相关强度:
|r| | 相关强度 |
---|---|
0.8-1.0 | 极强相关 |
0.6-0.8 | 强相关 |
0.4-0.6 | 中等程度相关 |
0.2-0.4 | 弱相关 |
0.0-0.2 | 极弱相关或无相关 |
理解
协方差的定义是从方差而来的,XXX的方差是E(X−EX)E(X-EX)E(X−EX)与(X−EX)(X-EX)(X−EX)的乘积的期望,如今把一个(X−EX)(X-EX)(X−EX)换为(Y−EY)(Y-EY)(Y−EY),其形式接近方差,又有X,YX,YX,Y二者的参与,由此得出协方差的名称。
从功能上来说,其实协方差(Covariance)就足以刻画两个变量的相关关系。解释参见:协方差的意义
但是协方差是带有“单位”的,它和X,YX,YX,Y的数值有关,假如XXX的数值量级整体都远远大于YYY,那么就会使得计算出来的协方差很大,它的值是不可比较的,并不能统一地度量。所以我们需要将其无量纲化(单位化),以消除数值量级差异的影响,于是就引入了皮尔逊相关系数,其在协方差的基础上除以各自的标准差,这样就消除了单位,使得计算出来的值介于-1和1之间,相互之间是可比较的,不用受单位的影响。
其它理解角度:https://www.zhihu.com/question/19734616
如果对你有帮助,请点个赞:-D
相关系数——皮尔逊相关系数的公式及其理解相关推荐
- 计算相关系数 皮尔逊相关系数 Pearson、Spearman
数据探索 计算相关系数 为了更加准确地描述变量之间的线性相关程度,可以通过计算相关系统来进行相关分析. 在二元变量的相关分析过程中比较常用的有Pearson相关系数,Spearman秩相关系数和判定系 ...
- 相关系数和相关性分析(上):皮尔逊相关系数、斯皮尔曼相关系数
专注系列化.高质量的R语言教程 推文索引 | 联系小编 | 付费合集 我们最常用的相关系数是皮尔逊(Pearson)相关系数,也叫简单相关系数,用来衡量两个配对连续变量的线性相关程度.此外,还有斯皮尔 ...
- 皮尔逊相关系数的四种等价公式
由于存在 由于 , , 并且有 那么皮尔逊相关系数可通过以下公式计算: 公式一: 皮尔逊相关系数计算公式 公式二: 皮尔逊相关系数计算公式 公式三: 皮尔逊相关系数计算公式 公式四:
- 皮尔逊相关系数python实现
一.皮尔逊相关系数 常见公式: 公式转换: 具体和皮尔逊相关系数相关的内容可以看之前的一篇文章. 相似度计算(2)--皮尔逊相关系数 二.python实现 方法1:直接按公式算 import nump ...
- 皮尔逊相关系数的理解
别人写个回答的水平都很高如何理解皮尔逊相关系数(Pearson Correlation Coefficient)? 皮尔逊相关系数理解有两个角度 其一, 按照高中数学水平来理解, 它很简单, 可以看做 ...
- ML之PPMCC:PPMCC皮尔逊相关系数(Pearson correlation coefficient)、Spearman相关系数的简介、案例应用之详细攻略
ML之PPMCC:PPMCC皮尔逊相关系数(Pearson correlation coefficient).Spearman相关系数的简介.案例应用之详细攻略 目录 PPMCC皮尔逊相关系数的简介 ...
- python二维散点分布图_深入理解皮尔逊相关系数amp;python代码
1.常见理解误区 (1)计算出变量A和变量B的皮尔逊相关系数为0,不代表A和B之间没有相关性,只能说明A和B之间不存在线性相关关系. 例:温度和冰淇淋销量之间的散点图像如下,可以发现大致成二次函数图像 ...
- python怎么计算相关系数_Python三种方法计算皮尔逊相关系数
1.皮尔逊相关系数在统计学中,皮尔逊相关系数( Pearson correlation coefficient),又称皮尔逊积矩相关系数(Pearson product-moment correlat ...
- 【统计学】三大相关系数之皮尔逊相关系数(person correlation coefficient)
统计学中的三大相关性系数:pearson, spearman, kendall,他们反应的都是两个变量之间变化趋势的方向以及程度,其值范围为-1到+1. 0表示两个变量不相关,正值表示正相关,负值表示 ...
- 利用协方差,皮尔逊相关系数和斯皮尔曼相关系数确定变量间的关系
利用协方差,皮尔逊相关系数和斯皮尔曼相关系数确定变量间的关系 https://www.toutiao.com/i6550915552490029576/ 数据集中的变量之间可能存在复杂且未知的关系.重 ...
最新文章
- python转行it好学吗-想转行学python过来人提醒大家几点
- unity 批量导入模型工具_如何将VMD舞蹈导入桌面萌娘MMD
- 亲测有用的downie下载站点
- php并发访问排队_PHP高并发处理方案
- mysql数据库入门教程(15):流程控制结构
- 5个构建Spring Boot API的实用技巧
- 【转】ABP源码分析三十二:ABP.SignalR
- linux 中用PPA安装软件
- LeetCode 1952. 三除数
- 【C++深入探索】Copy-and-swap idiom详解和实现安全自我赋值
- Python TypeError: descriptor '__init__' requires a 'super' object but received a 'str' 错误
- IOS学习笔记04---编写第一个C语言程序-Hello World
- net core文件接收(jpg、png、zip、pdf等自己设置)
- https://www.bejson.com/devtools/properties2yaml/
- Eclipse ADT Bundle 整合包下载地址(百度网盘)
- 五十九秒的秒表C语言程序,单片机试验00-59秒计时器(利用软件延时)
- linux设置双屏拼接_Linux下双屏显示设置
- vue ant design a-table表格标题(title)添加icon样式
- 计算机英语冯敏课后题答案,(中学篇)2020年第10期:例谈基于协同效应的读后续写教学(浙江:冯敏)一文涉及的读后续写试题...
- 开发板浮点型运算能力测试