Code Beispiele für Woche 11
Lineare Regression in R
Verwendung von lm() und summary()
Definition
lm() ist eine Funktion in R, die für die Durchführung einer linearen Regression verwendet wird, um die Koeffizienten des linearen Modells zu schätzen. Die Funktion summary() bietet eine Zusammenfassung der Regressionsergebnisse, einschließlich Regressionskoeffizienten, statistischer Signifikanz und Modellgüte.
Beispiel
# Linear regression model
model <- lm(mpg ~ wt + cyl, data = mtcars)
# Summary of the model
summary(model)Nullhypothese und Alternativhypothese
Für jeden Koeffizienten in der linearen Regression: - Nullhypothese (H0): Der Koeffizient ist gleich 0 (kein Effekt). - Alternativhypothese (H1): Der Koeffizient ist nicht gleich 0 (ein Effekt ist vorhanden).
Zugriff auf Elemente eines linearen Regressionsmodells in R
Nachdem ein lineares Regressionsmodell mit der Funktion lm() erstellt wurde, können verschiedene Elemente des Modells mit dem $-Operator abgerufen werden. Dies ermöglicht einen direkten Zugriff auf die Komponenten des Modells für weitere Analysen oder Berichte.
Beispiel
Erstellung eines linearen Modells:
model <- lm(mpg ~ wt + qsec, data = mtcars)Zugriff auf Modellkomponenten
Hier sind einige der wichtigsten Modellkomponenten, auf die zugegriffen werden kann:
- Koeffizienten des Modells:
model$coefficients- Residuen des Modells:
model$residuals- Fitted (vorhergesagte) Werte:
model$fitted.values- Anzahl der Freiheitsgrade:
model$df.residual- Zusammenfassung der Residuen:
summary(model$residuals)- Zusammenfassung der Koeffizienten:
summary(model)$coefficients- R-Quadrat und angepasstes R-Quadrat:
summary(model)$r.squared
summary(model)$adj.r.squared- F-Statistik:
summary(model)$fstatisticPlotten von Regressionslinien mit Konfidenzintervallen
Definition
Das Plotten von Regressionslinien mit Konfidenzintervallen erfolgt in R mit der ggplot2-Bibliothek. Durch Setzen von se = True in geom_smooth() werden Konfidenzintervalle um die Regressionslinie gezeichnet.
Beispiel
library(ggplot2)
# Plotting with ggplot2
ggplot(mtcars, aes(x = wt, y = mpg)) +
geom_point() +
geom_smooth(method = "lm", se = TRUE)Annahmen der linearen Regression
Unabhängigkeit der Residuen und der Durbin-Watson-Test
Definition
Die Residuen sollten unabhängig voneinander sein. Der Durbin-Watson-Test prüft auf Autokorrelation in den Residuen.
R-Code
# Durbin-Watson test
library(lmtest)
dwtest(model)Nullhypothese und Alternativhypothese
- Nullhypothese (H0): Die Residuen sind unabhängig (keine Autokorrelation).
- Alternativhypothese (H1): Die Residuen sind nicht unabhängig (Autokorrelation vorhanden).
Normalverteilung der Residuen
Definition
Die Residuen sollten normalverteilt sein. Dies kann mit einem QQ-Plot und dem Kolmogorov-Smirnov-Test überprüft werden.
Nullhypothese und Alternativhypothese (Kolmogorov-Smirnov-Test)
- Nullhypothese (H0): Die Residuen folgen einer Normalverteilung.
- Alternativhypothese (H1): Die Residuen folgen nicht einer Normalverteilung.
Konstante Varianz der Residuen (Homoskedastizität) und der Breusch-Pagan-Test
Definition
Die Varianz der Residuen sollte über alle Werte der unabhängigen Variablen hinweg konstant sein. Der Breusch-Pagan-Test prüft auf Heteroskedastizität.
R-Code
# Breusch-Pagan test
library(lmtest)
bptest(model)Nullhypothese und Alternativhypothese (Breusch-Pagan-Test)
- Nullhypothese (H0): Homoskedastizität liegt vor (konstante Varianz der Residuen).
- Alternativhypothese (H1): Heteroskedastizität liegt vor (nicht-konstante Varianz der Residuen).