Коэфициент кореляции показывает есть ли линейная зависимость у точек. Допустим у нас есть стандартные отклонения для x(SDx) и y(SDy). Для начала нам нужно перевести xi и yi в стандартные единицы по формуле: {{:pasted:20181023-103554.png}} назовём получившиеся массивы как x* и y* соответственно. Теперь получаем коэфициент кореляции по формуле: {{:pasted:20181023-115023.png}} Результат будет от -1 до 1. Чем ближе результат к нулю, тем хаотичнее расположены точки. Если результат близок к 1, то точки расположены на линии идущей вверх, если близок к -1, то линия идёт вниз. import math M=lambda x: float(sum(x))/len(x) def S(X): a = [((x) - M(X))**2 for x in X] return math.sqrt(M(a)) X=[1,2,3,4,5,6] Y=[1,2,3,4,5,7]#!!! def StdUnits(X): a = [(x) - M(X) for x in X] Xstar = [x/S(X) for x in a] return Xstar def corr(X,Y): a=StdUnits(X) b=StdUnits(Y) c=[a[i]*b[i] for i in range(len(a))] return sum(c)/len(c) print corr(X,Y) #0.98 because of 7 in Y