spearman学习

特征提取,预测都弄完了,现在要检查一下预测的效果。

spearman秩相关系数是度量两个变量之间的统计相关性的指标,用来评估当用单调函数来描述两个变量之间的关系有多好。在没有重复数据的情况下,如果一个变量是另外一个变量的严格单调函数,那么二者之间的spearman秩相关系数就是1或+1,称为完全spearman相关

如果Y随X的增加而增加,则spearman秩相关系数是正的,否则是负的

spearman秩相关系数为0表示随着X的增加Y没有增加或减小的趋势,随着X和Y的越来越接近严格单调函数管系,spearman秩相关系数在数值上越来越大。



python实现

import scipy.stats as stats

x = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
y = [1, 6, 8, 7, 10, 9, 3, 5, 2, 4]
print stats.stats.spearmanr(x,y)


或者直接用公式

x = [1, 8, 3, 4, 5, 6, 7, 2, 9, 10]
y = [1, 5, 8, 7, 10, 9, 3,6 , 2, 4]
n = len(x)
total = 0
for i in range(n):
    total += (x[i]-y[i])**2
spearman = 1 - float(6 * total) / (n * (n ** 2 - 1))
print spearman



检测x,y的相关性

结果:SpearmanrResult(correlation=-0.17575757575757578, pvalue=0.62718834477648444)


你可能感兴趣的:(大数据,python,spearman)