Die lm()-Funktion in R wird verwendet, um lineare Regressionsmodelle anzupassen.

Diese Funktion verwendet die folgende grundlegende Syntax:

lm(Formel, Daten, ...)

wobei:

  • Formel: Die Formel für das lineare Modell (z.B. y ~ x1 + x2)
  • Daten: Der Name des Dataframes, der die Daten enthält

Das folgende Beispiel zeigt, wie man diese Funktion in R verwendet, um Folgendes zu tun:

  • Ein Regressionsmodell anpassen
  • Zusammenfassung der Anpassung des Regressionsmodells anzeigen
  • Betrachten Sie die Diagnoseplots für das Modell
  • Darstellung des angepassten Regressionsmodells
  • Vorhersagen anhand des Regressionsmodells treffen

Regressionsmodell anpassen

Der folgende Code zeigt, wie man die Funktion lm() verwendet, um ein lineares Regressionsmodell in R anzupassen:

#Daten definieren
df = data.frame(x=c(1, 3, 3, 4, 5, 5, 6, 8, 9, 12),
                y=c(12, 14, 14, 13, 17, 19, 22, 26, 24, 22))

#lineares Regressionsmodell mit 'x' als Prädiktor und 'y' als Antwortvariable anpassen
model <- lm(y ~ x, data=df)

Zusammenfassung des Regressionsmodells anzeigen

Wir können dann die Funktion summary() verwenden, um die Zusammenfassung der Anpassung des Regressionsmodells anzuzeigen:

#Zusammenfassung des Regressionsmodells anzeigen
summary(model)

Call:
lm(formula = y ~ x, data = df)

Residuals:
    Min      1Q  Median      3Q     Max 
-4.4793 -0.9772 -0.4772  1.4388  4.6328 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  11.1432     1.9104   5.833  0.00039 ***
x             1.2780     0.2984   4.284  0.00267 ** 
---
Signif. codes:  0***0.001**0.01*0.05.0.1 ‘ ’ 1

Residual standard error: 2.929 on 8 degrees of freedom
Multiple R-squared:  0.6964,    Adjusted R-squared:  0.6584 
F-statistic: 18.35 on 1 and 8 DF,  p-value: 0.002675

Die wichtigsten Werte des Modells sind wie folgt zu interpretieren:

  • F-Statistik = 18,35, entsprechender p-Wert = .002675. Da dieser p-Wert kleiner als .05 ist, ist das Modell insgesamt statistisch signifikant.
  • Mehrfaches R-Quadrat = .6964. Dies besagt, dass 69,64% der Variation der Antwortvariablen y durch die Vorhersagevariable x erklärt werden können.
  • Koeffizientenschätzung von x: 1,2780. Das bedeutet, dass jede zusätzliche Erhöhung von x um eine Einheit mit einer durchschnittlichen Erhöhung von y um 1,2780 verbunden ist.

Wir können dann die Koeffizientenschätzungen aus der Ausgabe verwenden, um die geschätzte Regressionsgleichung zu schreiben:

y = 11,1432 + 1,2780*(x)

Bonus: Eine vollständige Anleitung zur Interpretation aller Werte in der Regressionsausgabe in R finden Sie hier.

Diagnoseplots des Modells anzeigen

Wir können dann die Funktion plot() verwenden, um die Diagnoseplots für das Regressionsmodell darzustellen:

#Diagnoseplots erstellen
plot(model)

Lm

Mit diesen Diagrammen können wir die Residuen des Regressionsmodells analysieren, um festzustellen, ob das Modell für die Daten geeignet ist.

In diesem Tutorial finden Sie eine vollständige Erklärung, wie Sie die Diagnoseplots für ein Modell in R interpretieren können.

Darstellung des angepassten Regressionsmodells

Wir können die Funktion abline() verwenden, um das angepasste Regressionsmodell darzustellen:

#Erstellen eines Streudiagramms der Rohdaten
plot(df$x, df$y, col='red', main='Summary of Regression Model', xlab='x', ylab='y')

#Angepasste Regressionsgerade hinzufügen
abline(model)

plot lm() in R

Verwendung des Regressionsmodells zur Erstellung von Vorhersagen

Wir können die Funktion predict() verwenden, um den Antwortwert für eine neue Beobachtung vorherzusagen:

#Neue Beobachtung definieren
new <- data.frame(x=c(5))

#Das angepasste Modell verwenden, um den Wert für die neue Beobachtung vorherzusagen
predict(model, newdata = new)

      1 
17.5332 

Das Modell sagt voraus, dass diese neue Beobachtung einen Antwortwert von 17,5332 haben wird.

Zusätzliche Ressourcen

Wie man eine einfache lineare Regression in R durchführt
Anleitung zur Durchführung einer multiplen linearen Regression in R
Wie man eine schrittweise Regression in R durchführt

Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: