La regresión lineal modela la relación entre:
Una variable independiente ().
xx
Una variable dependiente ().
yy
El objetivo es encontrar una línea recta (y=mx+by = mx + b) que minimice la distancia entre los puntos de datos y la línea.
Importación de bibliotecas:
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
numpy: Manejo de datos numéricos.matplotlib: Visualización de datos.sklearn.linear_model: Modelo de regresión lineal.Generación de datos:
x = np.arange(0, 19)
y = np.sin(x)
Creación y ajuste del modelo:
lin_reg = LinearRegression()
lin_reg.fit(x.reshape(-1, 1), y.reshape(-1, 1))
predicho = lin_reg.predict(np.array([19]).reshape(-1, 1))
fit: Ajusta el modelo a los datos.predict: Predice valores basados en el modelo ajustado.Visualización de resultados:
plt.scatter(x, y, label="Datos originales")
plt.scatter(19, predicho, label="Predicción")
plt.plot(x, lin_reg.predict(x.reshape(-1, 1)), label="Línea ajustada")
plt.legend()
plt.show()
Una gráfica con:
Los puntos de datos originales.
La línea de regresión ajustada.
Un punto adicional mostrando la predicción para .
x=19x=19