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=1−6∑ni=1d2in(n2−1)
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 pairs−number ofdiscordant pairsn(n−1)/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 对比
(带补充)