Cómo calcular la suma residual de cuadrados en Python

Actualizado por ultima vez el 7 de mayo de 2021, por .

Un residual es la diferencia entre un valor observado y un valor predicho en un modelo de regresión.

Se calcula como:

Residual = Valor observado – Valor previsto

Una forma de comprender qué tan bien se ajusta un modelo de regresión a un conjunto de datos es calcular la suma de cuadrados residual , que se calcula como:

Suma de cuadrados residual = Σ (e i ) 2

dónde:

  • Σ : un símbolo griego que significa «suma»
  • e i : El i- ésimo residuo

Cuanto menor sea el valor, mejor se ajustará un modelo a un conjunto de datos.

Este tutorial proporciona un ejemplo paso a paso de cómo calcular la suma residual de cuadrados para un modelo de regresión en Python.

Paso 1: ingrese los datos

Para este ejemplo, ingresaremos datos para la cantidad de horas dedicadas al estudio, el total de exámenes de preparación tomados y la puntuación del examen recibida por 14 estudiantes diferentes:

importar pandas como pd

#create DataFrame 
df = pd. DataFrame ({' horas ': [1, 2, 2, 4, 2, 1, 5, 4, 2, 4, 4, 3, 6, 5],
                   ' exámenes ': [1, 3, 3, 5, 2, 2, 1, 1, 0, 3, 4, 3, 2, 4],
                   ' puntuación ': [76, 78, 85, 88, 72, 69, 94, 94, 88, 92, 90, 75, 96, 90]})

Paso 2: ajustar el modelo de regresión

A continuación, usaremos la función OLS () de la biblioteca statsmodels para realizar una regresión de mínimos cuadrados ordinarios, usando «horas» y «exámenes» como variables predictoras y «puntuación» como variable de respuesta:

importar modelos de estadísticas. api  como sm

#define la variable de respuesta
 y = df [' puntuación ']

#definir variables predictoras
 x = df [[' horas ', ' exámenes ']]

#add constante a las variables predictoras
 x = sm. add_constant (x)

#fit modelo de regresión lineal
 modelo = sm. MCO (y, x). encajar ()

#ver impresión del resumen del modelo
 (modelo. resumen ())

                            Resultados de regresión de OLS                            
================================================ ============================
Dep. Variable: puntuación R cuadrado: 0,722
Modelo: OLS Adj. R cuadrado: 0,671
Método: Estadístico F de mínimos cuadrados: 14,27
Fecha: sábado, 02 de enero de 2021 Prob (estadística F): 0,000878
Hora: 15:58:35 Log-Probabilidad: -41.159
No. Observaciones: 14 AIC: 88,32
Residuos Df: 11 BIC: 90.24
Modelo Df: 2                                         
Tipo de covarianza: no robusto                                         
================================================ ============================
                 coef std err t P> | t | [0.025 0.975]
-------------------------------------------------- ----------------------------
const 71,8144 3,680 19,517 0,000 63,716 79,913
horas 5.0318 0.942 5.339 0.000 2.958 7.106
exámenes -1.3186 1.063 -1.240 0.241 -3.658 1.021
================================================ ============================
Ómnibus: 0,976 Durbin-Watson: 1,270
Problema (Ómnibus): 0,614 Jarque-Bera (JB): 0,757
Sesgo: -0,245 Prob (JB): 0,685
Curtosis: 1.971 Cond. No. 12.1
================================================ ============================

Paso 3: Calcule la suma residual de cuadrados

Podemos usar el siguiente código para calcular la suma de cuadrados residual del modelo:

imprimir (modelo. ssr )

293.25612951525414

La suma de cuadrados residual resulta ser 293,256 .

Recursos adicionales

Cómo realizar una regresión lineal simple en Python
Cómo realizar una regresión lineal múltiple en Python
Calculadora de suma de cuadrados residual

  • https://r-project.org
  • https://www.python.org/
  • https://www.stata.com/

Deja un comentario

Puede utilizar la siguiente sintaxis para trazar varias series desde un único DataFrame de pandas: plt. plot (df ​​[' series1…
statologos comunidad-2

Compartimos información EXCLUSIVA y GRATUITA solo para suscriptores (cursos privados, programas, consejos y mucho más)

You have Successfully Subscribed!