Pearson相关系数和Spearman相关系数的区别

定义

Pearson相关系数

评估两个连续变量之间的线性关系。
在这里插入图片描述

Spearman相关系数

评估两个变量之间的单调关系,在单调关系中,变量趋于一起变化,但不一定以恒定速率变化,即并非一定是线性关系。
请添加图片描述

区别

  1. 当有离群点时,Spearman会更加稳定
    创建一个数据集,并加上离群点,比较两种方法计算的相关系数。
x1 <- rnorm(200)
y1 <- rnorm(200) + .6 * x1

#  加入离群点
x2 <- c(x1, 14)
y2 <- c(y1, 14)

# Plot 
par(mfrow=c(1,2))
plot(x1, y1, main="No outlier", col = 4, pch = 7, cex = 0.8)
plot(x2, y2, main="With outlier", col = 6, pch = 7, cex = 0.8)


# Calculate correlations 
round(cor(x1, y1, method="pearson"), 2)
round(cor(x1, y1, method="spearman"), 2)
round(cor(x2, y2, method="pearson"), 2)
round(cor(x2, y2, method="spearman"), 2)

请添加图片描述
相关系数的结果如下:
请添加图片描述
即在没有离群点的时候,两者都是0.44;但是当存在离群点之后,pearson系数变成了0.69,但是spearman仍是0.44。

  1. Pearson相关系数表示线性关系,而Spearman并不一定是线性关系。
    当一个变量增加时,另一个变量增加一致量,形成一条递增的直线,在该情况下二者的值均为+1。
    请添加图片描述
    当一个变量增加时另一个变量也增加,但是增量不完全一致,则此时Pearson相关系数为正但小于1,而Spearman相关系数仍为+1。
    请添加图片描述

选择

  1. 连续数据,正态分布,线性关系,用pearson相关系数是最恰当,当然用spearman相关系数也可以, 就是效率没有pearson相关系数高。
  2. 上述任一条件不满足,就用spearman相关系数,不能用pearson相关系数。
  3. 两个定序数据之间也用spearman相关系数,不能用pearson相关系数。

注:
(1)定序数据是指仅仅反映观测对象等级、顺序关系的数据,是由定序尺度计量形成的,表现为类别,可以进行排序,属于品质数据。
eg. 优良差用123表示,加减乘除没有意义。定序数据最重要的意义代表了一组数据中的某种逻辑顺序。
(2)斯皮尔曼相关系数的适用条件比皮尔逊相关系数要广,只要数据满足单调关系(例如线性函数、指数函数、对数函数等)就能够使用。

参考:

  • https://blog.csdn.net/a_pickles/article/details/107347058
  • https://www.jianshu.com/p/add3017e1c4f
  • https://blog.csdn.net/lambsnow/article/details/79972145
  • https://blog.csdn.net/Android_xue/article/details/100136612
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值