Cara menghitung residu standar di r


Residual adalah selisih antara nilai observasi dan nilai prediksi dalam model regresi .

Ini dihitung sebagai berikut:

Sisa = Nilai yang diamati – Nilai yang diprediksi

Jika kita memplot nilai observasi dan menempatkan garis regresi yang dipasang, residu untuk setiap observasi akan menjadi jarak vertikal antara observasi dan garis regresi:

Contoh residu dalam statistik

Salah satu jenis residu yang sering kita gunakan untuk mengidentifikasi outlier dalam model regresi disebut residu terstandarisasi .

Ini dihitung sebagai berikut:

r i = e i / s( ei ) = e i / RSE√ 1-h ii

Emas:

  • e i : Residu ke -i
  • RSE: kesalahan standar sisa model
  • h ii : Meningkatnya observasi ke-i

Dalam praktiknya, kita sering menganggap residu terstandar yang nilai absolutnya lebih besar dari 3 sebagai outlier.

Tutorial ini memberikan contoh langkah demi langkah tentang cara menghitung residu terstandar di R.

Langkah 1: Masukkan datanya

Pertama, kita akan membuat kumpulan data kecil untuk digunakan di R:

 #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

Langkah 2: Sesuaikan model regresi

Selanjutnya, kita akan menggunakan fungsi lm() agar sesuai dengan model regresi linier sederhana :

 #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

Langkah 3: Hitung residu standar

Selanjutnya, kita akan menggunakan fungsi bawaan rstandard() untuk menghitung residu standar model:

 #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

Kita dapat menambahkan sisa standar ke bingkai data asli jika kita mau:

 #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

Kami kemudian dapat mengurutkan setiap observasi dari yang terbesar hingga yang terkecil berdasarkan residu standarnya untuk mendapatkan gambaran observasi mana yang paling dekat dengan outlier:

 #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

Dari hasil tersebut, kita dapat melihat bahwa tidak ada satu pun residu terstandar yang melebihi nilai absolut 3. Dengan demikian, tidak ada satu pun observasi yang tampak outlier.

Langkah 4: Visualisasikan residu standar

Terakhir, kita dapat membuat plot sebar untuk memvisualisasikan nilai variabel prediktor terhadap residu standar:

 #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)

Sumber daya tambahan

Apa itu residu?
Apa yang dimaksud dengan residu terstandar?
Pengantar Regresi Linier Berganda

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *