def corr_spearman(lst1, lst2): """ Spearman's Rank Correlation Coefficient i.e. Pearson's Correlation Coefficient between ranked variables (in ascending order) """ rank1 = util.sortranks(lst1, tied=True) rank2 = util.sortranks(lst2, tied=True) return corr(rank1, rank2)
def spearman(vec1, vec2): """Spearman's rank test""" assert len(vec1) == len(vec2), "vec1 and vec2 are not the same length" n = len(vec1) rank1 = util.sortranks(vec1) rank2 = util.sortranks(vec2) R = sum((vec1[i] - vec2[i])**2 for i in xrange(n)) Z = (6 * R - n * (n * n - 1)) / (n * (n + 1) * sqrt(n - 1)) return Z
def spearman(vec1, vec2): """Spearman's rank test""" assert len(vec1) == len(vec2), "vec1 and vec2 are not the same length" n = len(vec1) rank1 = util.sortranks(vec1) rank2 = util.sortranks(vec2) R = sum((vec1[i] - vec2[i])**2 for i in xrange(n)) Z = (6*R - n*(n*n - 1)) / (n*(n + 1) * sqrt(n - 1)) return Z