chezahuynya1/app/zadachi/zadacha2.py

36 lines
1.5 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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