Sebagaimana dinyatakan dalam dokumentasi , plot.lm()
dapat mengembalikan 6 plot berbeda:
[1] sebidang residual terhadap nilai-nilai pas, [2] sebidang Skala-Lokasi sqrt (| residual |) terhadap nilai-nilai pas, [3] plot QQ Normal, [4] sebidang jarak Cook dengan label baris, [5] sebidang residual terhadap leverage, dan [6] sebidang jarak Cook terhadap leverage / (1-leverage). Secara default, tiga dan 5 pertama disediakan. ( penomoran saya )
Plot [1] , [2] , [3] & [5] dikembalikan secara default. Interpreting [1] dibahas pada CV di sini: Menafsirkan residu vs plot yang cocok untuk memverifikasi asumsi model linier . Saya menjelaskan asumsi homoskedastisitas dan plot yang dapat membantu Anda menilai hal itu (termasuk plot skala-lokasi [2] ) pada CV di sini: Apa artinya memiliki varian konstan dalam model regresi linier? Saya telah membahas qq-plot [3] pada CV di sini: QQ plot tidak cocok dengan histogram dan di sini: PP-plot vs QQ-plot . Ada juga gambaran yang sangat bagus di sini: Bagaimana cara menafsirkan plot QQ? Jadi, yang tersisa hanyalah pemahaman [5] , plot residual-leverage.
Untuk memahami ini, kita perlu memahami tiga hal:
- pengaruh,
- residu standar, dan
- Jarak memasak.
Untuk memahami leverage , kenali bahwa regresi Kuadrat Terkecil cocok dengan garis yang akan melewati pusat data Anda, . Garis bisa miring atau curam, tetapi akan berputar di sekitar titik itu seperti tuas pada titik tumpu . Kita dapat mengambil analogi ini secara harfiah: karena OLS berusaha untuk meminimalkan jarak vertikal antara data dan garis *, titik data yang lebih jauh ke arah ekstrem akan mendorong / menarik lebih keras pada tuas (yaitu, garis regresi ); mereka memiliki lebih banyak pengaruh . Satu hasil dari ini bisa(X¯, Y¯)Xbahwa hasil yang Anda dapatkan didorong oleh beberapa titik data; itulah yang dimaksudkan plot ini untuk membantu Anda menentukan.
Hasil lain dari fakta bahwa poin lebih jauh pada memiliki lebih banyak leverage adalah bahwa mereka cenderung lebih dekat ke garis regresi (atau lebih akurat: garis regresi cocok sehingga lebih dekat dengan mereka ) daripada titik yang dekat . Dengan kata lain, standar deviasi residual dapat berbeda pada titik yang berbeda pada (bahkan jika standar deviasi kesalahan adalah konstan). Untuk memperbaikinya, residu sering distandarisasi sehingga mereka memiliki varian konstan (dengan asumsi proses pembuatan data yang mendasarinya adalah homoscedastic, tentu saja). XX¯X
Salah satu cara untuk memikirkan apakah hasil yang Anda dapatkan didorong oleh titik data tertentu adalah untuk menghitung seberapa jauh nilai prediksi untuk data Anda akan bergerak jika model Anda cocok tanpa titik data yang dimaksud. Jarak total yang dihitung ini disebut jarak Cook . Untungnya, Anda tidak perlu menjalankan ulang model regresi Anda kali untuk mengetahui seberapa jauh nilai yang diprediksi akan bergerak, Cook's D adalah fungsi dari leverage dan residual terstandarisasi yang terkait dengan setiap titik data. N
Dengan mengingat fakta-fakta ini, pertimbangkan plot yang terkait dengan empat situasi berbeda:
- dataset di mana semuanya baik-baik saja
- dataset dengan leverage tinggi, tetapi titik residu rendah standar
- dataset dengan leverage rendah, tetapi memiliki residual point tinggi
- dataset dengan titik residu dengan leverage tinggi, berstandar tinggi
Plot di sebelah kiri menunjukkan data, pusat data dengan titik biru, proses pembuatan data yang mendasari dengan garis abu-abu putus-putus, model cocok dengan garis biru, dan titik khusus dengan titik merah. Di sebelah kanan adalah plot sisa-pengungkitan yang sesuai; titik khusus adalah . Model terdistorsi buruk terutama dalam kasus keempat di mana ada titik dengan leverage tinggi dan residual standar besar (negatif). Untuk referensi, berikut adalah nilai yang terkait dengan poin khusus: (X¯, Y¯)21
leverage std.residual cooks.d
high leverage, low residual 0.3814234 0.0014559 0.0000007
low leverage, high residual 0.0476191 3.4456341 0.2968102
high leverage, high residual 0.3814234 -3.8086475 4.4722437
Di bawah ini adalah kode yang saya gunakan untuk membuat plot-plot ini:
set.seed(20)
x1 = rnorm(20, mean=20, sd=3)
y1 = 5 + .5*x1 + rnorm(20)
x2 = c(x1, 30); y2 = c(y1, 20.8)
x3 = c(x1, 19.44); y3 = c(y1, 20.8)
x4 = c(x1, 30); y4 = c(y1, 10)
* Untuk membantu memahami bagaimana regresi OLS berupaya menemukan garis yang meminimalkan jarak vertikal antara data dan garis, lihat jawaban saya di sini: Apa perbedaan antara regresi linier pada y dengan x dan x dengan y?