Regresión lineal
REGRESIÓN LÍNEAL (Aprendizaje supervisado)
La regresión lineal se utiliza para identificar la relación entre una variable dependiente y una o más variables independientes, y normalmente se aprovecha para hacer predicciones sobre resultados futuros. Cuando solo hay una variable independiente y una variable dependiente, se conoce como regresión lineal simple.
EJEMPLO
# Importar las bibliotecas necesarias
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error
# Crear un conjunto de datos de ejemplo
data = {
'Años_Experiencia': np.random.randint(1, 20, 100),
'Nivel_Educativo': np.random.randint(10, 20, 100),
'Edad': np.random.randint(20, 60, 100),
'Salario': np.random.randint(30000, 80000, 100)
}
df = pd.DataFrame(data)
# Dividir los datos en conjuntos de entrenamiento y prueba
X = df[['Años_Experiencia', 'Nivel_Educativo', 'Edad']]
y = df['Salario']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Crear un modelo de regresión lineal
modelo = LinearRegression()
# Entrenar el modelo con los datos de entrenamiento
modelo.fit(X_train, y_train)
# Realizar predicciones en el conjunto de prueba
predicciones = modelo.predict(X_test)
# Evaluar el rendimiento del modelo
mse = mean_squared_error(y_test, predicciones)
print(f'Mean Squared Error: {mse}')
# Visualizar los resultados
plt.scatter(X_test['Años_Experiencia'], y_test, color='black', label='Actual')
plt.scatter(X_test['Años_Experiencia'], predicciones, color='red', label='Predicción')
plt.title('Predicción de Salarios con Regresión Lineal')
plt.xlabel('Años de Experiencia')
plt.ylabel('Salario')
plt.legend()
plt.show()
Este código crea un conjunto de datos sintético, divide los datos en conjuntos de entrenamiento y prueba, entrena un modelo de regresión lineal y grafica las predicciones frente a los valores reales para el salario. Puedes ajustar las características y la generación de datos según tus necesidades y datos reales.
Comentarios
Publicar un comentario