¿Cómo usar la función lm() en R para ajustar modelos lineales?

En este artículo, aprenderemos a usar la función lm() para ajustar modelos lineales en el lenguaje de programación R.

Un modelo lineal se utiliza para predecir el valor de una variable desconocida en función de variables independientes. Se utiliza principalmente para averiguar la relación entre las variables y la previsión. La función lm() se usa para ajustar modelos lineales a marcos de datos en el lenguaje R. Se puede utilizar para realizar regresiones, análisis de varianza de estrato único y análisis de covarianza para predecir el valor correspondiente a los datos que no están en el marco de datos. Estos son muy útiles para predecir el precio de los bienes inmuebles, el pronóstico del tiempo, etc.

Para ajustar un modelo lineal en el lenguaje R usando la función lm() , primero usamos la función data.frame() para crear un marco de datos de muestra que contiene valores que deben ajustarse en un modelo lineal usando la función de regresión. Luego usamos la función lm() para ajustar una determinada función a un marco de datos dado.

Sintaxis:

lm( fórmula_de_ajuste, marco de datos )

Parámetro:

  • fitting_formula: determina la fórmula para el modelo lineal.
  • marco de datos: determina el nombre del marco de datos que contiene los datos.

Luego, podemos usar la función summary() para ver el resumen del modelo lineal. La función summary() interpreta los valores estadísticos más importantes para el análisis del modelo lineal.

Sintaxis:

resumen (modelo_lineal)

El resumen contiene la siguiente información clave:

  • Error estándar residual: determina la desviación estándar del error donde la raíz cuadrada de la varianza resta n menos 1 + # de variables involucradas en lugar de dividir por n-1.
  • Múltiple R-Squared: determina qué tan bien se ajusta su modelo a los datos.
  • R-Squared ajustado: normaliza Múltiples R-Squared teniendo en cuenta cuántas muestras tiene y cuántas variables está usando.
  • F-Statistic: es una prueba «global» que verifica si al menos uno de sus coeficientes es distinto de cero.

Ejemplo: Ejemplo para mostrar el uso de la función lm().

R

# sample data frame
df <- data.frame( x= c(1,2,3,4,5),
                  y= c(1,5,8,15,26))
  
# fit linear model
linear_model <- lm(y ~ x^2, data=df)
  
# view summary of linear model
summary(linear_model)

Producción:

Llamar:

lm(fórmula = y ~ x^2, datos = gl)

Derechos residuales de autor:

        1 2 3 4 5  

2.000e+00 5.329e-15 -3.000e+00 -2.000e+00 3.000e+00  

Coeficientes:

           Estimación estándar Error valor t Pr(>|t|)    

(Intersección) -7,0000 3,0876 -2,267 0,10821    

x 6,0000 0,9309 6,445 0,00757 **

signif. códigos: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ‘ 1

Error estándar residual: 2,944 en 3 grados de libertad

R-cuadrado múltiple: 0,9326, R-cuadrado ajustado: 0,9102  

Estadístico F: 41,54 en 1 y 3 DF, valor p: 0,007575

Parcelas de diagnóstico

Las gráficas de diagnóstico nos ayudan a ver la relación entre diferentes valores estadísticos del modelo. Nos ayuda a analizar el alcance de los valores atípicos y la eficiencia del modelo ajustado. Para ver gráficos de diagnóstico de un modelo lineal, usamos la función plot() en el lenguaje R.

Sintaxis:

trama (modelo_lineal)

Ejemplo: gráficos de diagnóstico para el modelo lineal ajustado anterior.

R

# sample data frame
df <- data.frame( x= c(1,2,3,4,5),
                  y= c(1,5,8,15,26))
  
# fit linear model
linear_model <- lm(y ~ x^2, data=df)
  
# view diagnostic plot
plot(linear_model)

Producción:

Trazado de modelo lineal

Podemos trazar el modelo lineal ajustado anterior para visualizarlo bien usando el método abline() . Primero trazamos un gráfico de dispersión de puntos de datos y luego lo superponemos con un gráfico abline del modelo lineal usando la función abline().

Sintaxis:

parcela( df$x, df$y)

abline(Modelo_lineal)

Ejemplo: Trazado de un modelo lineal

R

# sample data frame
df <- data.frame( x= c(1,2,3,4,5),
                  y= c(1,5,8,15,26))
  
# fit linear model
linear_model <- lm(y ~ x^2, data=df)
  
# Plot abline plot
plot( df$x, df$y )
abline( linear_model)

Producción:

Predecir valores para puntos de datos desconocidos usando el modelo ajustado

Para predecir valores para entradas novedosas usando el modelo lineal ajustado anterior, usamos la función predict(). La función predict() toma el modelo y el marco de datos con puntos de datos desconocidos y predice el valor de cada punto de datos según el modelo ajustado.

Sintaxis:

predecir (modelo, datos)

Parámetro:

  • modelo: determina el modelo lineal.
  • datos: determina el marco de datos con puntos de datos desconocidos.

Ejemplo: predicción de entradas novedosas

R

# sample data frame
df <- data.frame( x= c(1,2,3,4,5),
                  y= c(1,5,8,15,26))
  
# fit linear model
linear_model <- lm(y ~ x^2, data=df)
  
# Predict values
predict( linear_model, newdata = data.frame(x=c(15,16,17)) )

Producción:

1  2  3  
83 89 95

Publicación traducida automáticamente

Artículo escrito por mishrapriyank17 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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