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

23 строки
843 B
Python

def calculate_correlation(list1, list2):
"""Модуль 2: Вычисляет коэффициент корреляции для двух списков"""
# Если списки разной длины, используем минимальную длину
n = min(len(list1), len(list2))
# Берем только первые n элементов из каждого списка
x = list1[:n]
y = list2[:n]
mean_x = sum(x)/n
mean_y = sum(y)/n
chisl = 0
sum1 = 0
sum2 = 0
for i in range(n):
chisl += (x[i] - mean_x) * (y[i] - mean_y)
sum1 += (x[i] - mean_x) ** 2
sum2 += (y[i] - mean_y) ** 2
znam = (sum1 * sum2) ** 0.5
if znam == 0:
return ('Ошибка, деление на ноль')
correlation = chisl / znam
return correlation