LingPy

This documentation is for version 2.0.dev, which is not released yet.

lingpy.algorithm.distance.pearson

lingpy.algorithm.distance.pearson(x, y)

Pearson correlation coefficient.

n = len(x) values = range(n)

sum_x = sum([float(x[i]) for i in values]) sum_y = sum([float(y[i]) for i in values])

sqr_sum_x = sum([x[i]**2.0 for i in values]) sqr_sum_y = sum([y[i]**2.0 for i in values])

p_sum = ([x[i]*y[i] for i in values])

num = p_sum-(sum_x * sum_y / n) den = ((sqr_sum_x - pow(sum_x,2)/n) * (sqr_sum_y - pow(sum_y,2)/n))**.5

if den == 0:
return 0

r = dum/den

return r

This Page