Contenido de este artículo
- 0
- 0
- 0
- 0
Actualizado el 24 de noviembre de 2022, por Dereck Amesquita.
R cuadrado , a menudo escrito R 2 , es la proporción de la varianza en la variable de respuesta que puede explicarse por las variables predictoras en un modelo de regresión lineal .
El valor de R-cuadrado puede oscilar entre 0 y 1. Un valor de 0 indica que la variable de respuesta no puede ser explicada por la variable de predicción en absoluto, mientras que un valor de 1 indica que la variable de respuesta puede ser explicada perfectamente sin errores por el predictor.
El R-cuadrado ajustado es una versión modificada de R-cuadrado que se ajusta al número de predictores en un modelo de regresión. Se calcula como:
R 2 ajustado = 1 – [(1-R 2 ) * (n-1) / (nk-1)]
dónde:
- R 2 : El R 2 del modelo
- n : el número de observaciones
- k : el número de variables predictoras
Dado que R 2 siempre aumenta a medida que agrega más predictores a un modelo, el R 2 ajustado puede servir como una métrica que le indica qué tan útil es un modelo, ajustado por el número de predictores en un modelo .
Este tutorial muestra dos ejemplos de cómo calcular R 2 ajustado para un modelo de regresión en Python.
Relacionado: ¿Qué es un buen valor R cuadrado?
Calcular R cuadrado ajustado con sklearn en python
El siguiente código muestra cómo ajustar un modelo de regresión lineal múltiple y calcular el R-cuadrado ajustado del modelo usando sklearn:
https://raw.githubusercontent.com/dereckamesquita/Introduccion-a-R/main/mtcars.csv
from sklearn.linear_model import LinearRegression import pandas as pd # Creamos la variable URL, la cual contiene la dirección de un data set url = "https://raw.githubusercontent.com/dereckamesquita/Introduccion-a-R/main/mtcars.csv" # Leémos la data data = pd.read_csv(url) # Creamos el modelo de regresión lineal model = LinearRegression() X, y = data[["mpg", "wt", "drat", "qsec"]], data.hp model.fit(X, y) # Calculamos manualmente el R Cuadrado ajustado 1 - (1-model.score(X, y))*(len(y)-1)/(len(y)-X.shape[1]-1) 0.7787005290062521
La R-cuadrada ajustada del modelo resulta ser 0,7787 .
Ejemplo 2: Calcular R-Cuadrado Ajustado con Statsmodels
El siguiente código muestra cómo ajustar un modelo de regresión lineal múltiple y calcular el R-cuadrado ajustado del modelo usando statsmodels:
import statsmodels.api as sm import pandas as pd # Creamos la variable URL, la cual contiene la dirección de un data set url = "https://raw.githubusercontent.com/dereckamesquita/Introduccion-a-R/main/mtcars.csv" # Leémos la data data = pd.read_csv(url) # Corremos el modelo de regresión lineal X, y = data[["mpg", "wt", "drat", "qsec"]], data.hp X = sm.add_constant(X) model = sm.OLS(y, X).fit() # Imprimimos el R cuadrado ajustado print(model.rsquared_adj) 0.7787005290062521
La R-cuadrada ajustada del modelo resulta ser 0,7787 , que coincide con el resultado del ejemplo anterior.
Recursos adicionales
Cómo realizar una regresión lineal simple en Python
Cómo realizar una regresión lineal múltiple en Python
- 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: