logo

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

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

Se utiliza un modelo lineal para predecir el valor de una variable desconocida en función de variables independientes. Se utiliza principalmente para descubrir la relación entre variables y pronósticos. La función lm() se utiliza para ajustar modelos lineales a marcos de datos en el lenguaje R. Se puede utilizar para realizar regresión, análisis de varianza de estrato único y análisis de covarianza para predecir el valor correspondiente a datos que no están en el marco de datos. Son muy útiles para predecir el precio de bienes raíces, pronóstico del tiempo, etc.



Para ajustar un modelo lineal en el lenguaje R usando el lm() función, 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 determinado.

Sintaxis:

lm( fórmula_adaptación, marco de datos )



Parámetro:

    apropiado_fórmula: 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 resumen() para ver el resumen del modelo lineal. La función resumen() interpreta los valores estadísticos más importantes para el análisis del modelo lineal.

fecha java ahora

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. R cuadrado múltiple: determina qué tan bien se ajusta su modelo a los datos. R cuadrado ajustado: normaliza R cuadrado múltiple teniendo en cuenta cuántas muestras tienes y cuántas variables estás usando. Estadística F: es una prueba global que comprueba si al menos uno de tus 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 = df)

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:

Estimar estándar Valor t de error Pr(>|t|)

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

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

Significativo. 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

Los gráficos 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, utilizamos 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 utilizando el método abline(). Primero trazamos un diagrama de dispersión de puntos de datos y luego lo superponemos con un diagrama abline del modelo lineal usando la función abline().

Sintaxis:

trama( df$x, df$y)

diferencia entre cena y cena

abline(modelo_lineal)

Ejemplo: Trazar modelo lineal

R




cadena a int
# 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 utilizando el modelo ajustado

Para predecir valores para entradas novedosas utilizando el modelo lineal ajustado anterior, utilizamos 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 de acuerdo con 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: Predecir 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>