首页 > 编程知识 正文

多因素logistic分析,统计学三大相关系数

时间:2023-05-06 17:53:03 阅读:138563 作者:2239

((从微信公众号ryddx转发) ) ) ) ) ) ) ) ) )微信公众号ryddx转发) ) ) ) ) ) ) ) )微信公众号ryddx转发) ) ) ) 652 )

三个相关系数(pearson,spearman,kendall )的反应都是两个变量之间变化趋势的方向和程度,其取值范围为-1到1,0指示两个变量无相关,正值为正相关;

1. person correlation coefficient (皮尔森相关系数)公式如下:

统计学的三个相关系数(pearson、spearman、kendall ) )。

请注意第一个等号后的表达式。 最后的是导出计算,暂时不需要管理它们。 没有。 发现两个变量(x,y )的皮尔森相关系数(X,y )等于它们之间的协方差cov ) x,y )除以各自的标准偏差的乘积(X,Y )。

表达式的分母是变量的标准偏差。 这意味着在计算皮尔森相关系数时,变量的标准偏差不能为0。 分母不能为0。 这意味着两个变量中的任何一个都不能相同。 如果没有变化,则无法用皮尔森相关系数计算该变量和另一变量之间是否存在相关。

例如,假设你想调查一个人奔跑的速度和心脏跳动之间的相关性。 如果是不管跑得多快心率都不变(也就是说心率这个变量的标准偏差为0 ),或者即使心率突然上升或者下降,也一直维持着速度跑),那么通过皮尔森相关系数的计算来判断心率和跑速度之间有多大的关联

再抽出一点,看看更普遍的例子。 其中的计算用受欢迎的r语言执行。 如果你手头也有r语言的话,请一起试试:

假设你现在做了生物学实验,很高兴以下两个变量:

x1=c (1,2,3,4,5,6 ) )。

y1=c(0.3、0.9、2.7、2、3.5、5 ) )。

x1-c (1,2,3,4,5,6 ) )。

y1-c(0.3、0.9、2.7、2、3.5、5 ) )。

mean(x1 ) #平均值

[1] 3.5

中值(y1 ) )。

[1] 2.4

var(x1 ) #方差

[1] 3.5

是var(y1 )

[1] 2.976

SD(x1 ) #标准偏差

[1] 1.870829

是SD(y1 )

[1] 1.725109

cov(x1,Y1 ) #协方差

[1] 3.06

cor(x1,Y1,method=”pearson”) #皮尔森相关系数

[1] 0.9481367

其值为0.9以上表示两者非常相关。 例如,已验证蛋白质a表达量的变化与蛋白质b表达量的变化有很大关系! 拿到这样的统计学论证结果可能会很高兴。

但是,由于实验操作的疏忽或数据处理的疏忽,得到了这样的变量x2 (1,1,1,1,1 ) )的情况下,计算x2和Y1之间的皮尔森相关系数会怎么样呢?

x2-c (1,1,1,1,1,1 ) )

cor(x2,Y1,method=”pearson”) )

[1] NA

警告消息:

incor(x2,Y1,method=“pearson”) : thestandarddeviationiszero

执行r时,会得到缺失值(NA ),代码会警告我们标准偏差为零(自己计算一下,X2的标准偏差是多少)。 此时,你明白上述意思吧。 也就是说,X2中的可取值完全没有变动,它和Y1的相关关系也无法用该方法计算。

另外,从上面的公式可以看出,皮尔森的相关系数是协方差和标准偏差的比,所以对数据有比较高的要求:

第一,实验数据通常假定正态分布总体成对。 为什么假设为正态分布呢? 因为我们在求出皮尔森相关系数后,通常采用t检验等方法进行皮尔森相关系数的检验,而t检验是基于数据呈正态分布的假设。

统计学的三个相关系数(pearson、spearman、kendall ) )。

第二,实验数据之间的差异不大,或者皮尔森的相关系数受异常值的影响较大。 例如,在刚才的心率和跑步的例子中,万一这个人的心脏不太好,跑到一定速度后受不了,突然心脏病发作,就会测量偏离正常值的心率。 如果把这个值也放入其中进行相关分析,其存在会大大干扰计算结果。

2.spearmancorrelationcoefficient .外向横摇相关系数通常也称为外向横摇相关系数。 “等级”可以理解为一种顺序或排序。 然后,它将根据原始数据的排序位置进行求解。 这种表达形式在求解皮尔森相关系数时没有限制。 让我们来看看计算公式。

统计学的三个相关系数(pearson、spearman、kendall ) )。

在计算过程中,首先将两个变量(x,y )的数据进行排列,然后将排列后的位置(x’,y’),() x’,y’) )的值称为秩次,秩次的差分为上式的di,n在变量中的举个例子吧。 假设我们实验的数据如下。

统计学之三大相关性系数(pearson、spearman、kendall)
带入公式,求得外向的面包相关性系数:ρs= 1-6*(1+1+1+9)/6*35=0.657

也就是说,我们不用管X和Y这两个变量具体的值到底差了多少,只需要算一下它们每个值所处的排列位置的差值,就可以求出相关性系数了。这下理解起来是不是容易多了!还是用上面的数据,下面写下代码实现:

X<-c(11,490,14,43,30,3)
Y<-c(2,75,3,44,7,42)
cor(X,Y,method=”spearman”)
[1] 0.6571429

而且,即便在变量值没有变化的情况下,也不会出现像皮尔森系数那样分母为0而无法计算的情况。另外,即使出现异常值,由于异常值的秩次通常不会有明显的变化(比如过大或者过小,那要么排第一,要么排最后),所以对外向的面包相关性系数的影响也非常小!

由于外向的面包相关性系数没有那些数据条件要求,适用的范围就广多了。在我们生物实验数据分析中,尤其是在分析多组学交叉的数据中说明不同组学数据之间的相关性时,使用的频率很高。

3. kendall correlation coefficient(肯德尔相关性系数)

肯德尔相关性系数,又称肯德尔秩相关系数,它也是一种秩相关系数,不过它所计算的对象是分类变量。
分类变量可以理解成有类别的变量,可以分为
无序的,比如性别(男、女)、血型(A、B、O、AB);
有序的,比如肥胖等级(重度肥胖,中度肥胖、轻度肥胖、不肥胖)。
通常需要求相关性系数的都是有序分类变量。

举个例子。比如评委对选手的评分(优、中、差等),我们想看两个(或者多个)评委对几位选手的评价标准是否一致;或者医院的尿糖化验报告,想检验各个医院对尿糖的化验结果是否一致,这时候就可以使用肯德尔相关性系数进行衡量。

由于数据情况不同,求得肯德尔相关性系数的计算公式不一样,一般有3种计算公式,在这里就不繁琐地列出计算公式了,直接给出R语言的计算函数:

还是用cor函数求,这时候把method这个参数设成“kendall”,这时我们假设老师对选手的评价等级—3表示优,2表示中,1表示差:

X<-c(3,1,2,2,1,3)
Y<-c(1,2,3,2,1,1)
cor(X,Y,method=”kendall”)
[1] -0.2611165

这时候就可以理解为两位老师对选手们的看法是呈相反趋势的,不过这种相反的程度不很大。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。