in

R – Regresión lineal

linearregression

El análisis de regresión es una herramienta estadística muy utilizada para establecer un modelo de relación entre dos variables. Una de estas variables se llama variable predictora cuyo valor se recopila a través de experimentos. La otra variable se llama variable de respuesta cuyo valor se deriva de la variable predictora.

En la regresión lineal, estas dos variables están relacionadas a través de una ecuación, donde el exponente (potencia) de ambas variables es 1. Matemáticamente, una relación lineal representa una línea recta cuando se traza como un gráfico. Una relación no lineal donde el exponente de cualquier variable no es igual a 1 crea una curva.

La ecuación matemática general para una regresión lineal es:

y = ax + b

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

  • y es la variable de respuesta.

  • X es la variable predictora.

  • a y B son constantes que se llaman coeficientes.

Pasos para establecer una regresión

Un ejemplo simple de regresión es predecir el peso de una persona cuando se conoce su altura. Para hacer esto, necesitamos tener la relación entre la altura y el peso de una persona.

Los pasos para crear la relación son:

  • Realice el experimento de recolectar una muestra de valores observados de altura y peso correspondiente.

  • Cree un modelo de relación utilizando el lm () funciones en R.

  • Encuentre los coeficientes del modelo creado y cree la ecuación matemática usando estos

  • Obtenga un resumen del modelo de relación para conocer el error promedio en la predicción. También llamado derechos residuales de autor.

  • Para predecir el peso de nuevas personas, use el predecir() función en R.

Los datos de entrada

A continuación se muestran los datos de muestra que representan las observaciones:

# Values of height
151, 174, 138, 186, 128, 136, 179, 163, 152, 131

# Values of weight.
63, 81, 56, 91, 47, 57, 76, 72, 62, 48

Función lm ()

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

Sintaxis

La sintaxis básica para lm () la función en regresión lineal es –

lm(formula,data)

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

Cree un modelo de relación y obtenga los coeficientes

x <- c(151, 174, 138, 186, 128, 136, 179, 163, 152, 131)
y <- c(63, 81, 56, 91, 47, 57, 76, 72, 62, 48)

# Apply the lm() function.
relation <- lm(y~x)

print(relation)

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

Call:
lm(formula = y ~ x)

Coefficients:
(Intercept)            x  
   -38.4551          0.6746 

Obtenga el resumen de la relación

x <- c(151, 174, 138, 186, 128, 136, 179, 163, 152, 131)
y <- c(63, 81, 56, 91, 47, 57, 76, 72, 62, 48)

# Apply the lm() function.
relation <- lm(y~x)

print(summary(relation))

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

Call:
lm(formula = y ~ x)

Residuals:
    Min      1Q     Median      3Q     Max 
-6.3002    -1.6629  0.0412    1.8944  3.9775 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept) -38.45509    8.04901  -4.778  0.00139 ** 
x             0.67461    0.05191  12.997 1.16e-06 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 3.253 on 8 degrees of freedom
Multiple R-squared:  0.9548,    Adjusted R-squared:  0.9491 
F-statistic: 168.9 on 1 and 8 DF,  p-value: 1.164e-06

función predecir ()

Sintaxis

La sintaxis básica de predict () en regresión lineal es:

predict(object, newdata)

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

Predecir el peso de nuevas personas

# The predictor vector.
x <- c(151, 174, 138, 186, 128, 136, 179, 163, 152, 131)

# The resposne vector.
y <- c(63, 81, 56, 91, 47, 57, 76, 72, 62, 48)

# Apply the lm() function.
relation <- lm(y~x)

# Find weight of a person with height 170.
a <- data.frame(x = 170)
result <-  predict(relation,a)
print(result)

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

       1 
76.22869 

Visualice la regresión gráficamente

# Create the predictor and response variable.
x <- c(151, 174, 138, 186, 128, 136, 179, 163, 152, 131)
y <- c(63, 81, 56, 91, 47, 57, 76, 72, 62, 48)
relation <- lm(y~x)

# Give the chart file a name.
png(file = "linearregression.png")

# Plot the chart.
plot(y,x,col = "blue",main = "Height & Weight Regression",
abline(lm(x~y)),cex = 1.3,pch = 16,xlab = "Weight in Kg",ylab = "Height in cm")

# Save the file.
dev.off()

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

Regresión lineal en R

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

mysqlcount1

Recuento de MySQL () – javatpoint

apple touch icon@2

Borde de fuente CSS? – Desbordamiento de pila