Contenido de este artículo
- 0
- 0
- 0
- 0
Una gráfica residual es un tipo de gráfica que muestra los valores ajustados contra los valores residuales para un modelo de regresión . Este tipo de gráfico se usa a menudo para evaluar si un modelo de regresión lineal es apropiado para un conjunto de datos dado y para verificar la heterocedasticidad de los residuos.
Este tutorial explica cómo crear un gráfico residual para un modelo de regresión lineal en Python.
Ejemplo: trama residual en Python
Para este ejemplo usaremos un conjunto de datos que describe los atributos de 10 jugadores de baloncesto:
importar numpy como np importar pandas como pd #create conjunto de datos df = pd.DataFrame ({'calificación': [90, 85, 82, 88, 94, 90, 76, 75, 87, 86], 'puntos': [25, 20, 14, 16, 27, 20, 12, 15, 14, 19], 'asiste': [5, 7, 7, 8, 5, 7, 6, 9, 9, 5], 'rebotes': [11, 8, 10, 6, 6, 9, 6, 10, 10, 7]}) #ver conjunto de datos df puntos de calificación ayuda a rebotes 0 90 25 5 11 1 85 20 7 8 2 82 14 7 10 3 88 16 8 6 4 94 27 5 6 5 90 20 7 9 6 76 12 6 6 7 75 15 9 10 8 87 14 9 10 9 86 19 5 7
Gráfica residual para regresión lineal simple
Supongamos que ajustamos un modelo de regresión lineal simple usando puntos como variable predictora y calificación como variable de respuesta:
import bibliotecas necesarias importar matplotlib.pyplot como PLT importación statsmodels.api como SM de statsmodels.formula.api importación oles #fit modelo de modelo de regresión lineal simple = ols ('calificación ~ puntos', datos = gl). encajar () #ver impresión de resumen del modelo (model.summary ())
Podemos crear una gráfica residual vs. ajustada usando la función plot_regress_exog () de la biblioteca statsmodels:
#define el tamaño de la figura fig = plt.figure (figsize = (12,8)) #producir gráficos de regresión fig = sm.graphics.plot_regress_exog (modelo, ' puntos ', fig = fig)
Se producen cuatro parcelas. El de la esquina superior derecha es el gráfico residual vs. ajustado. El eje x de este gráfico muestra los valores reales de los puntos de la variable predictora y el eje y muestra el residual de ese valor.
Dado que los residuos parecen estar distribuidos aleatoriamente alrededor de cero, esto es una indicación de que la heterocedasticidad no es un problema con la variable predictora.
Gráficos residuales para regresión lineal múltiple
Supongamos que, en cambio, ajustamos un modelo de regresión lineal múltiple utilizando asistencias y rebotes como variable de predicción y calificación como variable de respuesta:
#ajustar modelo de modelo de regresión lineal múltiple = ols ('calificación ~ asistencias + rebotes', datos = gl). encajar () #ver impresión de resumen del modelo (model.summary ())
Una vez más, podemos crear un gráfico residual vs. predictor para cada uno de los predictores individuales usando la función plot_regress_exog () de la biblioteca statsmodels.
Por ejemplo, así es como se ve el gráfico residual frente al predictor para las ayudas de la variable predictora :
#create gráfico residual vs predictor para 'asistencias' fig = plt.figure (figsize = (12,8)) fig = sm.graphics.plot_regress_exog (modelo, ' asiste ', fig = fig)
Y así es como se ve el gráfico residual frente al predictor para los rebotes de la variable predictora :
#create gráfico residual vs predictor para 'asistencias' fig = plt.figure (figsize = (12,8)) fig = sm.graphics.plot_regress_exog (modelo, ' rebotes ', fig = fig)
En ambas gráficas, los residuos parecen estar distribuidos aleatoriamente alrededor de cero, lo que indica que la heterocedasticidad no es un problema con ninguna de las variables predictoras del modelo.
- https://r-project.org
- https://www.python.org/
- https://www.stata.com/
¿Te hemos ayudado?
Ayudanos ahora tú, dejanos un comentario de agradecimiento, nos ayuda a motivarnos y si te es viable puedes hacer una donación:La ayuda no cuesta nada
Por otro lado te rogamos que compartas nuestro sitio con tus amigos, compañeros de clase y colegas, la educación de calidad y gratuita debe ser difundida, recuerdalo: