Cara menghitung residu standar dengan python


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 standar dengan Python.

Langkah 1: Masukkan datanya

Pertama, kita akan membuat kumpulan data kecil untuk digunakan dengan Python:

 import pandas as pd

#create dataset
df = pd. DataFrame ({' x ': [8, 12, 12, 13, 14, 16, 17, 22, 24, 26, 29, 30],
                   ' y ': [41, 42, 39, 37, 35, 39, 45, 46, 39, 49, 55, 57]})

Langkah 2: Sesuaikan model regresi

Selanjutnya, kita akan memasang model regresi linier sederhana :

 import statsmodels. api as sm

#define response variable
y = df[' y ']

#define explanatory variable
x = df[' x ']

#add constant to predictor variables
x = sm. add_constant (x)

#fit linear regression model
model = sm. OLS (y,x). fit ()

Langkah 3: Hitung residu standar

Selanjutnya, kami akan menghitung residu standar model:

 #create instance of influence
influence = model. get_influence ()

#obtain standardized residuals
standardized_residuals = influence. reside_studentized_internal

#display standardized residuals
print (standardized_residuals)

[ 1.40517322 0.81017562 0.07491009 -0.59323342 -1.2482053 -0.64248883
  0.59610905 -0.05876884 -2.11711982 -0.066556 0.91057211 1.26973888]

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:

 import matplotlib. pyplot as plt

plt. scatter (df.x, standardized_residuals)
plt. xlabel (' x ')
plt. ylabel (' Standardized Residuals ')
plt. axhline (y=0, color=' black ', linestyle=' -- ', linewidth=1)
plt. show ()

Sumber daya tambahan

Apa itu residu?
Apa yang dimaksud dengan residu terstandar?
Cara menghitung residu standar di R
Cara menghitung residu standar di Excel

Tambahkan komentar

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