R: regresión múltiple

La regresión múltiple es la extensión de la regresión lineal a una relación entre más de dos variables. En una relación lineal simple, tenemos un predictor y una variable de respuesta, pero en la regresión múltiple, tenemos más de una variable de predicción y una variable de respuesta.

Ecuación matemática general para regresión múltiple:

y = a + b1x1 + b2x2 +...bnxn

A continuación se muestra la descripción de los parámetros utilizados:

  • y esta es la variable de respuesta.

  • a, b1, b2 … bn coeficientes.

  • x1, x2, … xn – variables predictoras.

Creamos un modelo de regresión usando lm () una función en R. El modelo determina el valor de los coeficientes utilizando los datos de entrada. Luego, podemos predecir el valor de la variable de respuesta para un conjunto dado de variables predictoras utilizando estos coeficientes.

Función lm ()

Esta función crea un modelo de la relación entre el predictor y la variable de respuesta.

Sintaxis

Sintaxis básica para lm () función en regresión múltiple –

lm(y ~ x1+x2+x3...,data)

A continuación se muestra la descripción de los parámetros utilizados:

  • fórmula – un símbolo que representa la relación entre la variable de respuesta y las variables predictoras.

  • datos – el vector al que se aplicará la fórmula.

Ejemplo

Los datos de entrada

Considere el conjunto de datos «mtcars» disponible en el entorno R. Proporciona comparaciones entre diferentes modelos de automóviles en términos de kilometraje por galón (mpg), desplazamiento («disp»), caballos de fuerza («hp»), peso del vehículo («Wt»). ) y algunos otros parámetros.

El objetivo del modelo es establecer una relación entre «mpg» como variable de respuesta con «disp», «hp» y «wt» como variables predictoras. Para ello, creamos un subconjunto de estas variables a partir del conjunto de datos mtcars.

input <- mtcars[,c("mpg","disp","hp","wt")]
print(head(input))

Cuando ejecutamos el código anterior, da el siguiente resultado:

                   mpg   disp   hp    wt
Mazda RX4          21.0  160    110   2.620
Mazda RX4 Wag      21.0  160    110   2.875
Datsun 710         22.8  108     93   2.320
Hornet 4 Drive     21.4  258    110   3.215
Hornet Sportabout  18.7  360    175   3.440
Valiant            18.1  225    105   3.460

Construya un modelo de relación y obtenga proporciones

input <- mtcars[,c("mpg","disp","hp","wt")]

# Create the relationship model.
model <- lm(mpg~disp+hp+wt, data = input)

# Show the model.
print(model)

# Get the Intercept and coefficients as vector elements.
cat("# # # # The Coefficient Values # # # ","n")

a <- coef(model)[1]
print(a)

Xdisp <- coef(model)[2]
Xhp <- coef(model)[3]
Xwt <- coef(model)[4]

print(Xdisp)
print(Xhp)
print(Xwt)

Cuando ejecutamos el código anterior, da el siguiente resultado:

Call:
lm(formula = mpg ~ disp + hp + wt, data = input)

Coefficients:
(Intercept)         disp           hp           wt  
  37.105505      -0.000937        -0.031157    -3.800891  

# # # # The Coefficient Values # # # 
(Intercept) 
   37.10551 
         disp 
-0.0009370091 
         hp 
-0.03115655 
       wt 
-3.800891 

Crea una ecuación para el modelo de regresión

Basándonos en el punto de intersección y los coeficientes anteriores, creamos una ecuación matemática.

Y = a+Xdisp.x1+Xhp.x2+Xwt.x3
or
Y = 37.15+(-0.000937)*x1+(-0.0311)*x2+(-3.8008)*x3

Aplicar ecuación para predecir nuevos valores

Podemos usar la ecuación de regresión creada anteriormente para predecir el kilometraje cuando se proporciona un nuevo conjunto de valores para el sesgo, la potencia y el peso.

Para un vehículo con disp = 221, hp = 102 y wt = 2.91, el kilometraje predicho es –

Y = 37.15+(-0.000937)*221+(-0.0311)*102+(-3.8008)*2.91 = 22.7104

🚫