Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

17 строки
631 B
Python

def correlation(list1, list2):
"""Расчёт коэффициента корреляции"""
n = min(len(list1), len(list2)) # Общая длина
list1 = list1[:n]
list2 = list2[:n]
mean1 = sum(list1) / n
mean2 = sum(list2) / n
chislitel = sum((list1[i] - mean1) * (list2[i] - mean2) for i in range(n))
#Числитель формулы корреляции
znamenatel1 = sum((x - mean1) ** 2 for x in list1)
znamenatel2 = sum((y - mean2) ** 2 for y in list2)
if znamenatel1 == 0 or znamenatel2 == 0:
return 0
return chislitel/(znamenatel1 * znamenatel2) ** 0.5