相关性分析指标-Pearson,Spearman,Kendall,Multual information

Pearson’s Correlation Coefficient

介绍

  • 基于单调函数衡量两个变量之间的线性相关性程度
  • 数据分布假设:线性假设 和 同方差性假设
  • 单调性假设

计算公式

ρXY=cov(X,Y)σXσY
cov(X,Y)=E[(XμX)(YμY)]

代码实现

a<-c(1,2,3) 
b<-c(11,12,14)
cor.test(a,b,method="pearson")
cor=0.9819805060619659

Spearman’s Rank Correlation

介绍

  • 非参数测量方法,基于单调函数衡量两个变量的等级线性相关程度
  • 数据分布假设:无
  • 单调性假设

计算公式

rs=ρrgXrgY=cov(rgX,rgY)σrgXσrgY
rs=16ni=1d2in(n21)

di=rg(Xi)rg(Yi)

代码实现

//赋予a,b向量值
a<-c(1,10,100,101)
b<-c(21,10,15,13)

//计算spearman相关系数
cor.test(a,b,method="spearman")
rho=-0.4

//用替换后的向量的pearson相关系数进行验证
e<-c(1,2,3,4)
f<-c(4,1,3,2)
cor.test(e,f,method="pearson")
cor=-0.4

Kendall

介绍

也称作和谐系数,也是一种等级相关系数

计算公式

τ=number of concordant pairsnumber ofdiscordant pairsn(n1)/2

代码实现

//赋予a,b向量值
a<-c(1,2,3)
b<-c(1,3,2)
//计算kendall相关系数
cor.test(a,b,method="kendall")
tau=0.3333333333

Mutual information

介绍

  • 衡量两个变量的依赖程度关系
  • 可以是线性和非线性的假设
  • 可以是单调和非单调的关系

计算公式

I(X;Y)=

代码实现

disc=discretize2d(data$x, data$y, numBins1=n, numBins2=n)
mutualInfo=mi.empirical(disc)

对比

Multual information 与Pearson 对比

相关性分析指标-Pearson,Spearman,Kendall,Multual information_第1张图片

Pearson 与 Spearman 对比

(带补充)

参考资料

  • Mutual Information in R
  • 相关性分析 -pearson spearman kendall相关系数
  • What is the difference between mutual information and correlation?

你可能感兴趣的:(相关性分析,相关系数,互信息,信息熵,Pearson)