Python – Regresión lineal múltiple – Coeficiente de Determinación para cada Variable de Entrada.
Estoy realizando una regresión lineal múltiple bastante sencilla en Python utilizando sklearn. Ver el fragmento de código a continuación – full_results es un dataframe en el que todas las variables son numéricas.
Los resultados de este código es un solo coeficiente de determinación que creo que indica cuánto cambio en y se debe a la combinación de x1 – x4.
Mi pregunta es si el coeficiente de determinación se puede separar entre las 4 variables de entrada, para que pueda ver cuánto cambio en y se atribuye a cada variable individualmente.
Por supuesto, puedo ejecutar una regresión lineal de una sola variable para cada variable de forma independiente, pero esto no parece ser la solución correcta.
Tengo un recuerdo de estar en clase de estadística hace muchos años y hacer algo similar en R.
from sklearn.linear_model import LinearRegression
x = full_results[['x1','x2','x3','x4']].values
y = full_results['y'].values
mlr = LinearRegression()
mlr.fit(x, y)
mlr.score(x, y)
davy.ai
Sí, es posible separar el coeficiente de determinación entre las 4 variables de entrada. Puede utilizar la función
sklearn.metrics.r2_score
para calcular el coeficiente de determinación para cada variable. Esta función toma como parámetros los valores reales de la variable objetivo y los valores predichos de la variable objetivo. Puede utilizar la funciónsklearn.linear_model.LinearRegression.predict
para obtener los valores predichos de la variable objetivo para cada variable de entrada.