Простата линейна регресия е статистическа техника, използвана за установяване на връзката между две променливи, където едната е независимата променлива, а другата е зависимата променлива. Техниката се нарича „линейна“, защото предполага, че връзката между променливите е права линия. В този блог ще обясним как да извършим проста линейна регресия с код на 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. Тази техника е полезна в много области, включително финанси, маркетинг и икономика. Като разберем връзката между две променливи, можем да вземем по-добри решения и прогнози.