【数据科学】肯德尔等级相关系数( Kendall's tau coefficient )

本文详细介绍了Kendall的tau系数,一种用于测量两个测量量之间序数关联的统计量,包括其定义、计算方法及在统计假设检验中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在统计学中,Kendall等级相关系数,通常称为Kendall的tau系数(在希腊字母τ之后),是用于测量两个测量量之间的序数关联的统计量。甲tau蛋白测试是一种非参数假设检验用于基于所述tau蛋白系数统计依赖性。

它是衡量等级相关:数据的排序的相似度时排名由每个量。它以1938年开发的莫里斯·肯德尔命名,尽管古斯塔夫·费希纳在1897年的时间序列背景下提出了类似的措施。

直观地说,两个变量之间的Kendall相关将是高的,当观察具有类似的(或相同的为1的相关性)秩(变量内的观察,即相对位置标签:第一,第二,第三等)在两者之间变量,当观察结果与两个变量之间的排序不相似(或相关性完全不同)时,变量为低。

肯德尔都是\tau和斯皮尔曼的\rho可以表述为更一般的相关系数的特殊情况。

 

定义

令(1,  1),(2,  2),...,(n,  n)分别是联合随机变量XY的一组观察值,使得所有值(的)X_ {I})和(义})是独一无二的。任何一对观察{\ displaystyle(x_ {i},y_ {i})} 和 {\ displaystyle(x_ {j},y_ {j})},哪里 我置于<J,被认为是一致的,如果两个元件的行列(更精确地,由所述排序顺序X和由ÿ)同意:即,如果两个{\ displaystyle x_ {i}> x_ {j}} 和 {\ displaystyle y_ {i}> y_ {j}}; 或两者兼而有之{\ displaystyle x_ {i} <x_ {j}} 和{\ displaystyle y_ {i} <y_ {j}}。他们被认为是不和谐的,如果{\ displaystyle x_ {i}> x_ {j}} 和 {\ displaystyle y_ {i} <y_ {j}}; 或者如果{\ displaystyle x_ {i} <x_ {j}} 和{\ displaystyle y_ {i}> y_ {j}}。如果X_ {I} = X_ {Ĵ} 要么{\ displaystyle y_ {i} = y_ {j}},这对既不和谐也不矛盾。

肯德尔τ系数定义为:

{\ displaystyle \ tau = {\ frac {ï¼{\ text {ä¸è´å¯¹æ°}}ï¼ - ï¼{\ text {discordant pair}}}}} {nï¼n-1ï¼/ 2}}ã}

 

属性

分母是对组合的总数,所以系数一定要在范围-1≤  τ  ≤1。

  • 如果两个排名之间的一致性是完美的(即两个排名相同),则系数的值为1。
  • 如果两个排名之间的分歧是完美的(即,一个排名与另一个排名相反),则系数具有值-1。
  • 如果XY独立的,那么我们期望系数近似为零。
  • 肯德尔秩系数的显式表达式是{\ displaystyle \ tau = {\ frac {2} {n(n-1)}} \ sum _ {i <j} \ operatorname {sgn}(x_ {i} -x_ {j})\ operatorname {sgn} (Y_ {I} -y_ {Ĵ})}

 

假设检验

肯德尔秩系数通常用作统计假设检验中的检验统计量,以确定两个变量是否可被视为统计依赖性。该测试是非参数的,因为它不依赖于对X或Y的分布或(X,Y)的分布的任何假设。

在X和Y独立的零假设下,τ的采样分布具有零的预期值。精确分布不能用共同分布来表征,但可以精确计算小样本; 对于较大的样本,通常使用正态分布的近似值,均值为零和方差

{\ frac {2ï¼2n + 5ï¼} {9nï¼n-1ï¼}}

 

关系会计

一双{\ displaystyle \ {(x_ {i},y_ {i}),(x_ {j},y_ {j})\}}如果被认为是并列的X_ {I} = X_ {Ĵ} 要么 {\ displaystyle y_ {i} = y_ {j}}; 束缚既不协调也不矛盾。当数据中出现绑定对时,可以通过多种方式修改系数以使其保持在[-1,1]范围内:

Tau-a

牛头-统计测试协会的强度的的交叉表格。这两个变量都必须是有序的。Tau-a不会对关系进行任何调整。它被定义为:

\ tau _ {A} = {\ frac {n_ {c} -n_ {d}} {n_ {0}}}

其中ncndn0的定义如下一节所述。

 

Tau-b

与Tau-a不同,Tau-b统计数据可以对关系进行调整。[5] Tau-b的值范围从-1(100%负相关或完全反转)到+1(100%正相关或完全一致)。值为零表示没有关联。

Kendall Tau-b系数定义为:

\ tau _ {B} = {\ frac {n_ {c} -n_ {d}} {\ sqrt {(n_ {0} -n_ {1})(n_ {0} -n_ {2})}}}

参数:

{\ begin {aligned} n_ {0}&= n(n-1)/ 2 \\ n_ {1}&= \ sum _ {i} t_ {i}(t_ {i} -1)/ 2 \\ n_ {2}&= \ sum _ {j} u_ {j}(u_ {j} -1)/ 2 \\ n_ {c}&= {\ text {一致对数}} \\ n_ {d} &= {\ text {不一致对的数量}} \\ t_ {i}&= {\ text {} {}} {\ {​{​{​{第一个数量}} \\ u_ {j}&= {\ text {}中的绑定值数量}} j ^ {\ text {th}} {\ text {第二个数量的关系组}} \ end {aligned }}

请注意,某些统计软件包(例如SPSS)使用替代公式来提高计算效率,其中“常用”数量是一致和不一致对的两倍。

 

Tau-c 

Tau-c(也称为Stuart-Kendall Tau-c)比Tau-b更适合于基于非正方形(即矩形)列联表的数据分析。因此,如果两个变量的基础比例具有相同数量的可能值(排名前),则使用Tau-b,如果它们不同,则使用Tau-c。例如,一个变量可能在5分制(非常好,好,平均,差,非常差)上得分,而另一个可能基于更精细的10分制。

肯德尔Tau-c系数定义为:

{\ displaystyle \ tau _ {C} = {\ frac {2(n_ {c} -n_ {d})} {n ^ {2} {\ frac {(m-1)} {m}}}}}

参数:

{\ displaystyle {\ begin {aligned} n_ {c}&= {\ text {一致对数}} \\ n_ {d}&= {\ text {不和谐对数}} \\ r&= {\ text {行数}} \\ c&= {\ text {列数}} \\ m&= \ min(r,c)\ end {aligned}}}

 

算法

直接计算分子N_ {C} -n_ {d},涉及两个嵌套迭代,由以下伪代码表征:

numer := 0
for i:=2..N do
    for j:=1..(i-1) do
        numer := numer + sign(x[i] - x[j]) * sign(y[i] - y[j])
return numer

虽然快速实现,但这个算法是为O(n ^ {2})在复杂性和大样本变得非常慢。基于合并排序算法的更复杂的算法可用于计算分子O(n \ cdot \ log {n}) 时间。

首先按第一个数量排序您的数据点, X其次(在...中的关系)X)按第二数量,ÿ。通过这个初始订购,ÿ未排序,算法的核心包括计算冒泡排序将对此初始化进行排序所需的步数ÿ。增强的合并排序算法,带O(n \ log n) 复杂性,可用于计算掉期数量, S(y)的冒泡排序需要排序义}。那么分子为\ tau蛋白 计算如下:

N_ {C} -n_ {d} = N_ {0} -n_ {1} -n_ {2} + N_ {3} -2S(Y),

哪里 N_ {3} 算得像N_ {1} 和N_ {2},但关于联合关系X 和ÿ

一个归并排序划分的数据进行排序,ÿ 两个大致相等的一半,y _ {\ mathrm {left}} 和y _ {\ mathrm {right}},然后对每一半递归进行排序,然后将两个已排序的一半合并为一个完全排序的向量。数冒泡排序互换等于:

S(y)= S(y _ {\ mathrm {left}})+ S(y _ {\ mathrm {right}})+ M(Y _ {\ mathrm {left}},Y _ {\ mathrm {right}})

哪里是_ {\ mathrm {left}} 和 是_ {\ mathrm {right}} 是排序版本y _ {\ mathrm {left}} 和y _ {\ mathrm {right}},和M(\ cdot,\ cdot)表征合并操作的冒号排序交换等价物。M(\ cdot,\ cdot) 计算如下面的伪代码所示:

function M(L[1..n], R[1..m])
    i := 1
    j := 1
    nSwaps := 0
    while i <= n  and j <= m do
        if R[j] < L[i] then
            nSwaps := nSwaps + n - i + 1
            j := j + 1
        else
            i := i + 1
    return nSwaps

上述步骤的副作用是您最终得到的排序版本X 和一个排序版本ÿ。有了这些,因素T_ {I} 和U_ {}Ĵ 用来计算\ tau _ {B} 很容易在单个线性时间内通过排序数组获得。

 

参考文献:https://en.wikipedia.org/wiki/Kendall_rank_correlation_coefficient

 

 

<think>好的,我现在需要帮用户解答如何使用斯皮尔曼秩相关系数肯德尔等级相关系数来表示8个变量间的依赖关系,以及系数数值的意义。首先,我得回忆这两种相关系数的基本概念和应用场景。 斯皮尔曼秩相关系数,我记得它是基于变量的秩次来计算相关性的,属于非参数方法。它不要求数据服从正态分布,适用于等级数据或非线性关系的情况。而肯德尔等级相关系数则是通过评估两个变量对应样本对的协同性来衡量相关性,同样是非参数的,对异常值不敏感。用户提到有8个变量,可能需要构建一个相关系数矩阵来展示两两之间的相关性。 接下来,我需要确认如何具体应用这两种方法来分析8个变量间的依赖关系。对于斯皮尔曼,通常的做法是计算每两个变量之间的秩相关系数,形成一个8x8的矩阵。同样,肯德尔系数也是类似的过程,计算每对变量的&tau;值。用户可能需要使用统计软件如Python的scipy或R语言中的相关包来实现这些计算。 然后,关于系数大小的意义,斯皮尔曼和肯德尔的取值范围都是-1到1。正值表示正相关,负值负相关,绝对值越大相关性越强。但具体的数值对应的强度描述可能需要参考一般标准,比如0.1为弱相关,0.3中等,0.5强相关等,不过不同领域可能有不同解释,需要提醒用户注意上下文。 用户可能还想知道这两种方法的选择依据。根据引用内容,斯皮尔曼和肯德尔对数据条件要求相同,都是非参数的,适用于非线性、非正态或存在异常值的情况。而皮尔逊适用于线性关系且数据满足正态分布的情况。需要指出它们的区别,帮助用户理解为何选择这两种方法。 另外,用户的问题可能隐含着如何解释多个变量间的复杂关系,可能需要建议使用热力图来可视化相关系数矩阵,这样更直观。同时,要强调相关系数不代表因果关系,避免误解。 最后,确保回答结构清晰,分步骤说明方法,并解释系数意义。可能需要检查引用内容,确保准确引用,比如引用[1]和[2]提到斯皮尔曼和肯德尔的特点,引用[4]强调相关不等于因果。</think>### 斯皮尔曼秩与肯德尔等级相关系数的应用方法 #### **一、表示多变量依赖关系的方法** 1. **斯皮尔曼秩相关系数(Spearman’s Rank Correlation Coefficient)** - **计算方式**:对每个变量的原始数据分别转换为秩次(从小到大排列后的序号),计算每两个变量秩次之间的皮尔逊相关系数,公式为: $$ \rho = \frac{\sum (R_i - \bar{R})(S_i - \bar{S})}{\sqrt{\sum (R_i - \bar{R})^2 \sum (S_i - \bar{S})^2}} $$ 其中$R_i$和$S_i$为变量$x$和$y$的秩次[^3]。 - **多变量分析**:对8个变量两两计算斯皮尔曼相关系数,形成$8 \times 8$相关系数矩阵,反映变量间的单调关系强度。 2. **肯德尔等级相关系数Kendall’s Tau)** - **计算方式**:通过比较变量对的协同性(concordant pairs)和非协同性(discordant pairs)的比例,公式为: $$ \tau = \frac{2(\text{协同对数} - \text{非协同对数})}{n(n-1)} $$ 其中$n$为样本量。 - **多变量分析**:同样构建$8 \times 8$相关系数矩阵,衡量变量间的序数关联性[^2]。 --- #### **二、系数数值的含义** | 相关系数范围 | 斯皮尔曼/肯德尔相关性强度 | 意义 | |--------------------|--------------------------|----------------------------------------------------------------------| | $0.8 \leq |\rho| \leq 1.0$ | 极强相关 | 变量间存在显著单调关系(正或负) | | $0.6 \leq |\rho| < 0.8$ | 强相关 | 变量变化方向高度一致 | | $0.4 \leq |\rho| < 0.6$ | 中等相关 | 变量存在可观测的关联性 | | $0.2 \leq |\rho| < 0.4$ | 弱相关 | 关联性较弱,需结合其他分析验证 | | $|\rho| < 0.2$ | 无相关或极弱相关 | 变量间无明显单调关系(但可能存在非线性关系)[^4] | --- #### **三、关键区别与适用场景** 1. **斯皮尔曼系数特点**: - 更关注整体秩次一致性,适合检测单调关系(线性或非线性)。 - 对异常值敏感度低于皮尔逊系数,但高于肯德尔系数[^1]。 2. **肯德尔系数特点**: - 基于样本对的协同性,更适合小样本或存在较多重复值的数据。 - 计算复杂度较高,但对数据分布无要求,稳健性更强。 --- #### **四、操作建议** 1. **数据预处理**:若数据中存在异常值或非正态分布,优先选择这两种方法。 2. **结果可视化**:用热力图展示相关系数矩阵,例如: ```python import seaborn as sns corr_matrix = df.corr(method='spearman') # 或 method='kendall' sns.heatmap(corr_matrix, annot=True) ``` 3. **解释注意点**: - 系数仅反映统计关联性,不能推断因果关系[^4]。 - 若需分析非线性依赖,可结合互信息(Mutual Information)等指标。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值