Простата линейна регресия е статистическа техника, използвана за установяване на връзката между две променливи, където едната е независимата променлива, а другата е зависимата променлива. Техниката се нарича „линейна“, защото предполага, че връзката между променливите е права линия. В този блог ще обясним как да извършим проста линейна регресия с код на Python.

Да кажем, че имаме набор от данни с две променливи: X и Y. Искаме да използваме проста линейна регресия, за да разберем как X влияе върху Y. Ще използваме библиотеката Scikit-learn на Python, за да извършим този анализ. Ето как да го направите:

Първо импортираме необходимите библиотеки:

import numpy as np
from sklearn.linear_model import LinearRegression

След това създаваме нашия набор от данни. В този пример ще използваме примерен набор от данни от Scikit-learn:

from sklearn.datasets import make_regression
X, y = make_regression(n_samples=100, n_features=1, noise=10)

Тук създаваме набор от данни със 100 проби, 1 функция и ниво на шум 10. X е независимата променлива, а y е зависимата променлива.

Сега създаваме обект LinearRegression и го приспособяваме към нашите данни:

reg = LinearRegression().fit(X, y)

Това ще създаде линеен регресионен модел и ще го напасне към нашите данни.

Вече можем да използваме модела, за да правим прогнози. Да приемем, че искаме да предвидим стойността на y за нова стойност на X. Можем да използваме метода predict():

new_X = np.array([[0.5]])
predicted_y = reg.predict(new_X)

Тук прогнозираме стойността на y за нова стойност на X=0,5.

Можем също така да начертаем данните и регресионната линия, за да визуализираме връзката между X и Y:

import matplotlib.pyplot as plt
plt.scatter(X, y)
plt.plot(X, reg.predict(X), color='red')
plt.show()

Това ще създаде точкова диаграма на данните и регресионната линия.

И това е! Вече извършихме проста линейна регресия, използвайки код на Python. Тази техника е полезна в много области, включително финанси, маркетинг и икономика. Като разберем връзката между две променливи, можем да вземем по-добри решения и прогнози.