So berechnen sie standardisierte residuen in r
Ein Residuum ist die Differenz zwischen einem beobachteten Wert und einem vorhergesagten Wert in einemRegressionsmodell .
Es wird wie folgt berechnet:
Residuum = Beobachteter Wert – Vorhergesagter Wert
Wenn wir die beobachteten Werte grafisch darstellen und die angepasste Regressionslinie überlagern, wären die Residuen für jede Beobachtung der vertikale Abstand zwischen der Beobachtung und der Regressionslinie:
Eine Art von Residuen, die wir häufig verwenden, um Ausreißer in einem Regressionsmodell zu identifizieren, wird als standardisiertes Residuum bezeichnet.
Es wird wie folgt berechnet:
r i = e i / s(e i ) = e i / RSE√ 1-h ii
Gold:
- e i : Der i- te Rest
- RSE: der verbleibende Standardfehler des Modells
- h ii : Der Aufstieg der i-ten Beobachtung
In der Praxis betrachten wir häufig jedes standardisierte Residuum, dessen absoluter Wert größer als 3 ist, als Ausreißer.
Dieses Tutorial bietet ein schrittweises Beispiel für die Berechnung standardisierter Residuen in R.
Schritt 1: Geben Sie die Daten ein
Zuerst erstellen wir einen kleinen Datensatz, mit dem wir in R arbeiten:
#create data data <- data.frame(x=c(8, 12, 12, 13, 14, 16, 17, 22, 24, 26, 29, 30), y=c(41, 42, 39, 37, 35, 39, 45, 46, 39, 49, 55, 57)) #viewdata data xy 1 8 41 2 12 42 3 12 39 4 13 37 5 14 35 6 16 39 7 17 45 8 22 46 9 24 39 10 26 49 11 29 55 12 30 57
Schritt 2: Passen Sie das Regressionsmodell an
Als nächstes verwenden wir die Funktion lm(), um ein einfaches lineares Regressionsmodell anzupassen:
#fit model model <- lm(y ~ x, data=data) #view model summary summary(model) Call: lm(formula = y ~ x, data = data) Residuals: Min 1Q Median 3Q Max -8.7578 -2.5161 0.0292 3.3457 5.3268 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 29.6309 3.6189 8.188 9.6e-06 *** x 0.7553 0.1821 4.148 0.00199 ** --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 4.442 on 10 degrees of freedom Multiple R-squared: 0.6324, Adjusted R-squared: 0.5956 F-statistic: 17.2 on 1 and 10 DF, p-value: 0.001988
Schritt 3: Berechnen Sie standardisierte Residuen
Als nächstes verwenden wir die integrierte Funktion rstandard() , um die standardisierten Residuen des Modells zu berechnen:
#calculate the standardized residuals standard_res <- rstandard(model) #view the standardized residuals standard_res 1 2 3 4 5 6 1.40517322 0.81017562 0.07491009 -0.59323342 -1.24820530 -0.64248883 7 8 9 10 11 12 0.59610905 -0.05876884 -2.11711982 -0.06655600 0.91057211 1.26973888
Wenn wir möchten, können wir die standardisierten Residuen zum ursprünglichen Datenrahmen hinzufügen:
#column bind standardized residuals back to original data frame final_data <- cbind(data, standard_res) #view data frame xy standard_res 1 8 41 1.40517322 2 12 42 0.81017562 3 12 39 0.07491009 4 13 37 -0.59323342 5 14 35 -1.24820530 6 16 39 -0.64248883 7 17 45 0.59610905 8 22 46 -0.05876884 9 24 39 -2.11711982 10 26 49 -0.06655600 11 29 55 0.91057211 12 30 57 1.26973888
Anschließend können wir jede Beobachtung anhand ihres standardisierten Residuums vom größten zum kleinsten sortieren, um eine Vorstellung davon zu bekommen, welche Beobachtungen den Ausreißern am nächsten kommen:
#sort standardized residuals descending
final_data[ order (-standard_res),]
xy standard_res
1 8 41 1.40517322
12 30 57 1.26973888
11 29 55 0.91057211
2 12 42 0.81017562
7 17 45 0.59610905
3 12 39 0.07491009
8 22 46 -0.05876884
10 26 49 -0.06655600
4 13 37 -0.59323342
6 16 39 -0.64248883
5 14 35 -1.24820530
9 24 39 -2.11711982
Anhand der Ergebnisse können wir erkennen, dass keines der standardisierten Residuen einen absoluten Wert von 3 überschreitet. Somit scheint keine der Beobachtungen Ausreißer zu sein.
Schritt 4: Visualisieren Sie die standardisierten Residuen
Schließlich können wir ein Streudiagramm erstellen, um die Werte der Prädiktorvariablen gegenüber den standardisierten Residuen zu visualisieren:
#plot predictor variable vs. standardized residuals
plot(final_data$x, standard_res, ylab=' Standardized Residuals ', xlab=' x ')
#add horizontal line at 0
abline(0, 0)
Zusätzliche Ressourcen
Was sind Rückstände?
Was sind standardisierte Residuen?
Einführung in die multiple lineare Regression