免责声明:网站内容仅供个人学习记录,禁做商业用途,转载请注明出处。

版权所有 © 2017-2020 NEUSNCP个人学习笔记 辽ICP备17017855号-2

肯德尔tau系数的定义及python实现

hxy    2019年8月19日 08:50:18

1. Kendall's tau-b(肯德尔)等级相关系数 [1]:

用于反映分类变量相关性的指标,适用于两个分类变量均为有序分类的情况。对相关的有序变量进行非参数相关检验;取值范围在-1-1之间,此检验适合于正方形表格;
计算积距pearson相关系数,连续性变量才可采用;
计算Spearman秩相关系数,适合于定序变量或不满足正态分布假设的等间隔数据;
计算Kendall秩相关系数,适合于定序变量或不满足正态分布假设的等间隔数据。
计算相关系数:当资料不服从双变量正态分布或总体分布未知,或原始数据用等级表示时,宜用spearman或kendall相关。
  • Python实现:
#%%
from scipy.stats import kendalltau
import numpy as np
a = [1,2,3,4,5,6,7,8,9,10]
b = [3,7,2,1,4,8,6,10,5,9]

L = len(a)
count = 0
for i in range(L-1):
    for j in range(i+1,L):
        count = count + np.sign(a[i] - a[j]) * np.sign(b[i] - b[j])
 
kendall_tau = count/(L*(L-1)/2)
kendall_tau_2, p_value = kendalltau(a,b)

print(kendall_tau)
print(kendall_tau_2)
  • 运行结果:
0.4222222222222222
0.4222222222222222
  • 参考文献:
  1. M. G. Kendall, “A New Measure of Rank Correlation,” Biometrika, vol. 30, no. 1/2, pp. 81–93, 1938.
最近更新: 2019年8月19日 09:05:52
浏览: 2.2K

[[total]] 条评论

添加评论
  1. [[item.time]]
    [[item.user.username]] [[item.floor]]楼
  2. 点击加载更多……
  3. 添加评论