import numpy as np class zadacha2: def calculate_coefficients(self, X, Y): """ Функция для расчета коэффициентов b0 и b1 по методу наименьших квадратов (МНК) :param X: массив значений независимой переменной :param Y: массив значений зависимой переменной :return: коэффициенты b0 и b1 """ n = len(X) # Вычисляем средние значения X и Y mean_x = np.mean(X) mean_y = np.mean(Y) # Вычисляем коэффициент b1 numerator = np.sum((X - mean_x) * (Y - mean_y)) denominator = np.sum((X - mean_x) ** 2) b1 = numerator / denominator # Вычисляем коэффициент b0 b0 = mean_y - b1 * mean_x return b0, b1 def predict(self, X, b0, b1): """ Функция для предсказания значений Y на основе коэффициентов b0 и b1 :param X: массив значений независимой переменной :param b0: коэффициент b0 (свободный член) :param b1: коэффициент b1 (коэффициент при X) :return: предсказанные значения Y """ return b0 + b1 * X