Чтобы выполнить линейную регрессию с использованием матриц в Python, вы можете использовать несколько методов. Вот несколько часто используемых подходов и примеры кода:
- NumPy:
NumPy — популярная библиотека для научных вычислений на Python, обеспечивающая эффективные матричные операции. Вы можете использовать функциюnumpy.linalg.lstsq()
для выполнения линейной регрессии.
import numpy as np
# Input data
X = np.array([[1, 1], [1, 2], [1, 3], [1, 4]])
y = np.array([2, 3, 4, 5])
# Perform linear regression
coefficients, residuals, _, _ = np.linalg.lstsq(X, y, rcond=None)
# Extract the slope and intercept
intercept, slope = coefficients
print("Intercept:", intercept)
print("Slope:", slope)
- Scikit-learn:
Scikit-learn — мощная библиотека машинного обучения на Python. Он предоставляет простой и интуитивно понятный интерфейс для линейной регрессии.
from sklearn.linear_model import LinearRegression
# Input data
X = [[1], [2], [3], [4]]
y = [2, 3, 4, 5]
# Create and fit the linear regression model
model = LinearRegression()
model.fit(X, y)
# Extract the slope and intercept
intercept = model.intercept_
slope = model.coef_[0]
print("Intercept:", intercept)
print("Slope:", slope)
- Statsmodels:
Statsmodels — это библиотека, предназначенная для статистического моделирования. Он предоставляет полный набор инструментов для регрессионного анализа.
import statsmodels.api as sm
# Input data
X = [[1], [2], [3], [4]]
y = [2, 3, 4, 5]
# Add constant to the input data
X = sm.add_constant(X)
# Fit the linear regression model
model = sm.OLS(y, X)
results = model.fit()
# Extract the slope and intercept
intercept = results.params[0]
slope = results.params[1]
print("Intercept:", intercept)
print("Slope:", slope)
Это всего лишь несколько методов выполнения линейной регрессии с использованием матриц в Python. Каждый метод имеет свои преимущества и может подойти для разных сценариев. Выберите тот, который лучше всего соответствует вашим требованиям.