Cómo calcular la suma residual de cuadrados en Python

Puedes opinar sobre este contenido:
  • 0
  • 0
  • 0
  • 0

Actualizado el 17 de julio de 2024, por Luis Benites.

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/

Redactor del artículo

  • Luis Benites
    Director de Statologos.com

    Tengo una Maestría en Ciencias en Estadística Aplicada y he trabajado en algoritmos de aprendizaje automático para empresas profesionales tanto en el sector de la salud como en el comercio minorista.

    Ver todas las entradas

¿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:

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!