首页 > 解决方案 > Kendall Tau 距离 Python 实现,范围 [0,1]

问题描述

是否有用于 Kendall Tau 距离度量的 Python 实现,它产生 [0, 1] 范围内而不是 [-1,1] 范围内的分数?后者已经通过 scipy 库提供。

谢谢

标签: pythonscipyscoring

解决方案


我无法帮助您提供现有的实现,但也许这对您来说已经足够了。

您可以毫不费力地将其映射[-1, 1]到一个范围。[0, 1]

代码可能如下所示:

def map_to_0_1(score):
    return (1+score) / 2

foo_scores = [-1, -0.5, 0, 0.5, 1]
print('original range scores:     ', foo_scores)
print('scores mapped to new range:', list(map(map_to_0_1, foo_scores)))

输出:

original range scores:      [-1, -0.5, 0, 0.5, 1]
scores mapped to new range: [0.0, 0.25, 0.5, 0.75, 1.0]

这只是一个线性映射,它将输入按比例缩小到一个[0, 1]范围,当然您也可以使用不同的非线性映射。

我希望这有帮助。


推荐阅读