Pearson(皮尔逊)相关系数
2013-03-29 16:53
761 查看
在论文中,结果的对比,常常用到皮尔逊相关系数,以检查结果的提高程度!
1、简介
皮尔逊相关也称为积差相关(或积矩相关)是英国统计学家皮尔逊于20世纪提出的一种计算直线相关的方法。
假设有两个变量X、Y,那么两变量间的皮尔逊相关系数可通过以下公式计算:
公式一:
![](http://hi.csdn.net/attachment/201007/11/19961_12788382715I69.gif)
公式二:
![](http://hi.csdn.net/attachment/201007/11/19961_1278838271Lch3.gif)
公式三:
![](http://hi.csdn.net/attachment/201007/11/19961_1278838271OR17.gif)
公式四:
![](http://hi.csdn.net/attachment/201007/11/19961_1278843346L5kz.gif)
以上列出的四个公式等价,其中E是数学期望,cov表示协方差,N表示变量取值的个数。
2、适用范围
当两个变量的标准差都不为零时,相关系数才有定义,皮尔逊相关系数适用于:
(1)、两个变量之间是线性关系,都是连续数据。
(2)、两个变量的总体是正态分布,或接近正态的单峰分布。
(3)、两个变量的观测值是成对的,每对观测值之间相互独立。
3、Matlab实现
皮尔逊相关系数的Matlab实现(依据公式四实现):
摘自:http://blog.csdn.net/wsywl/article/details/5727327
创建2个向量.(R语言)
按照维基的例子,应计算出相关系数为1出来.我们看看如何一步一步计算出来的.
x的平均数是:3.8
y的平均数是0.138
所以,
用大白话来写就是:
(1-3.8)*(0.11-0.138)=0.0784
(2-3.8)*(0.12-0.138)=0.0324
(3-3.8)*(0.13-0.138)=0.0064
(5-3.8)*(0.15-0.138)=0.0144
(8-3.8)*(0.18-0.138)=0.1764
0.0784+0.0324+0.0064+0.0144+0.1764=0.308
同理, 分号下面的,分别是:
sum((x-mean(x))^2)=30.8
sum((y-mean(y))^2)= 0.00308
用大白话来写,分别是:
(1-3.8)^2=7.84 #平方
(2-3.8)^2=3.24 #平方
(3-3.8)^2=0.64 #平方
(5-3.8)^2=1.44 #平方
(8-3.8)^2=17.64 #平方
7.84+3.24+0.64+1.44+17.64=30.8
同理,求得:
然后再开平方根,分别是:
30.8^0.5=5.549775
0.00308^0.5=0.05549775
用分子除以分母,就计算出最终结果:
0.308/(5.549775*0.05549775)=1
摘自:http://segmentfault.com/q/1010000000094674
1、简介
皮尔逊相关也称为积差相关(或积矩相关)是英国统计学家皮尔逊于20世纪提出的一种计算直线相关的方法。
假设有两个变量X、Y,那么两变量间的皮尔逊相关系数可通过以下公式计算:
公式一:
![](http://hi.csdn.net/attachment/201007/11/19961_12788382715I69.gif)
公式二:
![](http://hi.csdn.net/attachment/201007/11/19961_1278838271Lch3.gif)
公式三:
![](http://hi.csdn.net/attachment/201007/11/19961_1278838271OR17.gif)
公式四:
![](http://hi.csdn.net/attachment/201007/11/19961_1278843346L5kz.gif)
以上列出的四个公式等价,其中E是数学期望,cov表示协方差,N表示变量取值的个数。
2、适用范围
当两个变量的标准差都不为零时,相关系数才有定义,皮尔逊相关系数适用于:
(1)、两个变量之间是线性关系,都是连续数据。
(2)、两个变量的总体是正态分布,或接近正态的单峰分布。
(3)、两个变量的观测值是成对的,每对观测值之间相互独立。
3、Matlab实现
皮尔逊相关系数的Matlab实现(依据公式四实现):
coeff = corr(X , Y);
摘自:http://blog.csdn.net/wsywl/article/details/5727327
先举个手算的例子
使用维基中的例子:例如,假设五个国家的国民生产总值分别是1、2、3、5、8(单位10亿美元),又假设这五个国家的贫困比例分别是11%、12%、13%、15%、18%。
创建2个向量.(R语言)
x<-c(1,2,3,5,8)
y<-c(0.11,0.12,0.13,0.15,0.18)
按照维基的例子,应计算出相关系数为1出来.我们看看如何一步一步计算出来的.
x的平均数是:3.8
y的平均数是0.138
所以,
sum((x-mean(x))*(y-mean(y)))=0.308
用大白话来写就是:
(1-3.8)*(0.11-0.138)=0.0784
(2-3.8)*(0.12-0.138)=0.0324
(3-3.8)*(0.13-0.138)=0.0064
(5-3.8)*(0.15-0.138)=0.0144
(8-3.8)*(0.18-0.138)=0.1764
0.0784+0.0324+0.0064+0.0144+0.1764=0.308
同理, 分号下面的,分别是:
sum((x-mean(x))^2)=30.8
sum((y-mean(y))^2)= 0.00308
用大白话来写,分别是:
(1-3.8)^2=7.84 #平方
(2-3.8)^2=3.24 #平方
(3-3.8)^2=0.64 #平方
(5-3.8)^2=1.44 #平方
(8-3.8)^2=17.64 #平方
7.84+3.24+0.64+1.44+17.64=30.8
同理,求得:
sum((y-mean(y))^2)=0.00308
然后再开平方根,分别是:
30.8^0.5=5.549775
0.00308^0.5=0.05549775
用分子除以分母,就计算出最终结果:
0.308/(5.549775*0.05549775)=1
摘自:http://segmentfault.com/q/1010000000094674
相关文章推荐
- Pearson(皮尔逊)相关系数及MATLAB实现
- 统计相关系数(1)——Pearson(皮尔逊)相关系数及MATLAB实现
- 统计相关系数(1)——Pearson(皮尔逊)相关系数及MATLAB实现
- Pearson(皮尔逊)相关系数及MATLAB实现
- 统计相关系数(1)——Pearson(皮尔逊)相关系数及MATLAB实现
- 统计相关系数(1)——Pearson(皮尔逊)相关系数及MATLAB实现
- Pearson’s product moment correlation/皮尔逊(森)积矩相关系数
- Pearson(皮尔逊)相关系数[ Pearson product-moment correlation coefficient; PPMCC或PCCs]
- Pearson(皮尔逊)相关系数
- 统计相关系数(1)——Pearson(皮尔逊)相关系数及MATLAB实现
- 【matlab】matlab相关系数计算公式(Pearson和Spearman,以及Kendall Rank)
- Pearson皮尔逊,Kendall肯德尔和Spearman斯皮尔曼三种相关分析方法的异同
- 【转】Pearson,Spearman,Kendall相关系数的具体分析
- 线性相关系数(Pearson product-moment correlation coefficient)-线性相关
- 皮尔逊积矩相关系数
- Pearson皮尔逊,Kendall肯德尔和Spearman斯皮尔曼三种相关分析方法的异同
- 几个相关系数:Pearson、Spearman、pointbiserialr、kendalltau
- 相关性分析 -pearson spearman kendall相关系数
- spark MLlib 概念 1:相关系数( PPMCC or PCC or Pearson's r皮尔森相关系数) and Spearman's correlation(史匹曼等级相关系数)
- np.corrcoef()方法计算数据皮尔逊积矩相关系数(Pearson's r)