No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Regresión lineal multivariable

8/18
Recursos

Aportes 13

Preguntas 2

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

La regresión lineal múltiple es la gran técnica estadística para comprobar hipótesis y relaciones explicativas

Notar que:
X = df[[‘RM’,‘INDUS’]].values
y = df[‘MEDV’].values.reshape(-1,1)
StandardScaler acepta arreglos de 2 dimensiones razon por la cual ya no usamos el reshape(-1,1)

En la regresion lineal múltiple hay que considerar que las variables independientes que agregue al modelo no se encuentren altamente correlacionada eso puede implicar en problemas de multicolinealidad

La regresión lineal multivariable es una técnica estadística utilizada para modelar la relación entre una variable dependiente y múltiples variables independientes. A diferencia de la regresión lineal simple, que involucra una única variable independiente, la regresión lineal multivariable considera varios predictores para predecir el valor de la variable dependiente.

En términos matemáticos, la regresión lineal multivariable se puede expresar como:

y = β0 + β1x1 + β2x2 + ... + βn*xn + ε

Donde:

y es la variable dependiente que queremos predecir.
x1, x2, ..., xn son las variables independientes o predictores.
β0 es el término constante o intercepto.
β1, β2, ..., βn son los coeficientes que representan las pendientes de cada predictor.
ε es el término de error o residual, que captura la variabilidad no explicada por el modelo.
  • El objetivo de la regresión lineal multivariable es encontrar los coeficientes β0, β1, β2, …, βn que minimicen la suma de los cuadrados de los errores (método de mínimos cuadrados). Una vez que se han estimado los coeficientes, podemos utilizar el modelo para realizar predicciones sobre nuevos datos.
  • La regresión lineal Multivariable, tiene mucha aplicación en series temporales, por ejemplo en industrias, donde tienes que calcular densidades de fluidos, pero estos varían por la presión, temperatura y velocidad del fluido.

  • Ahora, tu podrías mejorar tu predicción, utilizando diferentes modelos de regresión, por ejemplo puede ser la lineal, exponencial de diferentes grados, la cuadrática, logarítmica, etc … Analizando los valores del error cuadrático medio y R2, podemos notar cual modelo se ajusta mejor para nuestra pedicción con los datos que tenemos

Aquí tienes una lista de ejemplos médicos en los que se puede utilizar regresión lineal múltiple: 1. **Predicción de niveles de glucosa en pacientes con diabetes**: Usando variables como la edad, el índice de masa corporal (IMC), la actividad física y la ingesta calórica para predecir los niveles de glucosa. 2. **Estimación de la presión arterial**: Utilizando variables como la edad, el peso, el consumo de sal y la actividad física para predecir la presión arterial. 3. **Pronóstico de la probabilidad de enfermedades cardíacas**: Basándose en factores como los niveles de colesterol, el consumo de tabaco, la edad y el género. 4. **Predicción de la tasa de mortalidad postoperatoria**: Usando factores como la edad, la duración de la operación, las comorbilidades y el nivel de oxígeno en sangre. 5. **Determinación de la duración de la estancia hospitalaria**: Relacionada con variables como el tipo de intervención quirúrgica, la condición preexistente y la edad del paciente. 6. **Estimación del riesgo de fractura ósea en pacientes ancianos**: Basada en factores como la densidad ósea, el género, el historial de caídas y el peso corporal. 7. **Predicción del nivel de colesterol**: A partir de variables como la dieta, la actividad física, la edad y el índice de masa corporal. 8. **Evaluación de la función pulmonar**: Usando variables como la edad, el historial de tabaquismo, la exposición a contaminantes y el índice de masa corporal. 9. **Estimación del costo de tratamientos médicos**: Usando variables como la gravedad de la enfermedad, la edad del paciente, el tipo de tratamiento y la duración del mismo. 10. **Pronóstico del éxito de tratamientos de fertilidad**: Usando factores como la edad, la salud del útero, el historial médico y los niveles hormonales. ![](https://static.platzi.com/media/user_upload/image-8ce9f1b0-a194-4c56-8bc9-3de8bc711a46.jpg)
ufff Se noto el esfuerzo en agregarle valor a la clase........
Para graficar obtienes un error por el tema de las dimensiones de ambos conjuntos. Puedes graficarlo por separado o todo en un gráfico 3Dfrom mpl\_toolkits.mplot3d import Axes3Dimport matplotlib.pyplot as plt \# Tu código previo aquí... \# Crear una figura para un gráfico 3Dfig = plt.figure(figsize=(10, 8))ax = fig.add\_subplot(111, projection='3d') \# Extraer las características y la predicciónx\_rm = x\_std\[:, 0]  # RMx\_indus = x\_std\[:, 1]  # INDUSy\_pred = slr.predict(x\_std).ravel()  # Predicción del modelo \# Graficar los puntos de datosax.scatter(x\_rm, x\_indus, y\_std, label='Datos reales', color='blue') \# Graficar la superficie de predicción# Aquí, deberás crear una malla de valores para RM y INDUS y calcular los valores predichos correspondientes# Esto puede ser un poco complejo dependiendo de tu conjunto de datos y modelo \# Etiquetas y títuloax.set\_xlabel('RM (estandarizado)')ax.set\_ylabel('INDUS (estandarizado)')ax.set\_zlabel('MEDV (estandarizado)')ax.set\_title('Relación 3D entre RM, INDUS y MEDV') plt.legend()plt.show() ```js from mpl_toolkits.mplot3d import Axes3D import matplotlib.pyplot as plt # Tu código previo aquí... # Crear una figura para un gráfico 3D fig = plt.figure(figsize=(10, 8)) ax = fig.add_subplot(111, projection='3d') # Extraer las características y la predicción x_rm = x_std[:, 0] # RM x_indus = x_std[:, 1] # INDUS y_pred = slr.predict(x_std).ravel() # Predicción del modelo # Graficar los puntos de datos ax.scatter(x_rm, x_indus, y_std, label='Datos reales', color='blue') # Graficar la superficie de predicción # Aquí, deberás crear una malla de valores para RM y INDUS y calcular los valores predichos correspondientes # Esto puede ser un poco complejo dependiendo de tu conjunto de datos y modelo # Etiquetas y título ax.set_xlabel('RM (estandarizado)') ax.set_ylabel('INDUS (estandarizado)') ax.set_zlabel('MEDV (estandarizado)') ax.set_title('Relación 3D entre RM, INDUS y MEDV') plt.legend() plt.show() ```
Podrian explicarme por uqe eligió "INDUS"

------>Regresión lineal multivariable<--------

σ Aprenderemos a usar regresion linearl con multiples varibles
1 . Well, entendi que solo agrego una “variable” reutilizando el ejemplo del principio, y en vez de que el modelo solo se use " [RM] ", puso una coma y agrego. " [INDUS] "o_o

SÍ LES VOTA ERROR SOLO COPIEN Y PEGUEN EL SIGUIENTE CODIGO:

from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LinearRegression

X = df[['RM','INDUS']].values
y = df['MEDV'].values.reshape(-1, 1)

sc_x = StandardScaler()
sc_y = StandardScaler()

X_std = sc_x.fit_transform(X)
y_std = sc_y.fit_transform(y)

slr = LinearRegression()
slr.fit(X_std, y_std)

Si requieren el codigo para que puedan utilizarlo, pueden usr este: #la primera línea lleva doble corchete porque en el ejemplo s usa como tupla pero hay que usarlo como dataframe x = df[[‘RM’, ‘INDUS’]].values
y = df[‘MEDV’].values.reshape(-1, 1)

sc_x = StandardScaler()
sc_y = StandardScaler()

x_std = sc_x.fit_transform(x)
y_std = sc_y.fit_transform(y)

slr = LinearRegression()
slr.fit(x_std, y_std)