R: uji normalitas residual model linear - residual yang akan digunakan

13

Saya ingin melakukan tes W Shapiro Wilk dan tes Kolmogorov-Smirnov pada residu model linier untuk memeriksa normalitas. Saya hanya bertanya-tanya residual apa yang harus digunakan untuk ini - residu mentah, residu Pearson, residu pelajar atau residu terstandarisasi? Untuk uji W Shapiro-Wilk tampak bahwa hasil untuk residu baku & Pearson identik tetapi tidak untuk yang lain.

fit=lm(mpg ~ 1 + hp + wt, data=mtcars)
res1=residuals(fit,type="response")
res2=residuals(fit,type="pearson")
res3=rstudent(fit)
res4=rstandard(fit)
shapiro.test(res1) # W = 0.9279, p-value = 0.03427
shapiro.test(res2) # W = 0.9279, p-value = 0.03427
shapiro.test(res3) # W = 0.9058, p-value = 0.008722
shapiro.test(res4) # W = 0.9205, p-value = 0.02143

Pertanyaan yang sama untuk KS, dan juga apakah residu harus diuji terhadap distribusi normal (pnorm) seperti pada

ks.test(res1, "pnorm") # D = 0.296, p-value = 0.005563

atau distribusi t-student dengan nk-2 derajat kebebasan, seperti pada

ks.test(res3, "pt",df=nrow(mtcars)-2-2) 

Adakah saran? Juga, apa nilai yang direkomendasikan untuk statistik uji W (> 0,9?) Dan D agar distribusi cukup dekat dengan normalitas dan tidak terlalu mempengaruhi inferensi Anda?

Akhirnya, apakah pendekatan ini memperhitungkan ketidakpastian dalam koefisien lm yang dipasang, atau apakah fungsi cumres()dalam paket gof()akan lebih baik dalam hal ini?

bersorak, Tom

Tom Wenseleers
sumber
9
Jarang tes semacam itu memiliki poin. Tanyakan pada diri sendiri tindakan spesifik apa yang akan Anda ambil jika residu ternyata "secara signifikan" tidak normal. Pengalaman mengajarkan Anda bahwa itu tergantung pada bagaimana, dan seberapa banyak, mereka berbeda dari normal. Tak satu pun dari mereka secara langsung (atau memadai) diukur oleh SW, KS, atau tes distribusi formal lainnya. Untuk pekerjaan ini, Anda ingin menggunakan gambar eksplorasi, bukan tes formal. Pertanyaan tentang residu mana yang cocok untuk plot masih ada, tetapi pertanyaan yang tersisa jatuh ke pinggir sebagai tidak relevan.
whuber
Ya saya perhatikan bahwa banyak ahli statistik menganjurkan posisi ini. Tetapi saya masih ingin memeriksa statistik uji dari tes-tes ini (mis. Periksa apakah nilai Shapiro Wilks W lebih besar dari 0,9). Dan saya selalu bisa melakukan transformasi Box-Cox atau sesuatu seperti itu untuk meningkatkan normalitas jika terjadi penyimpangan besar. Ditambah pertanyaan saya juga sebagian konseptual - yaitu apa yang akan menjadi cara yang paling benar untuk melakukan ini, bahkan jika normalitas tidak selalu begitu penting dalam praktek ...
Tom Wenseleers

Jawaban:

9

Tumbuh terlalu lama untuk komentar.

  1. Untuk model regresi biasa (seperti yang akan dipasang oleh lm), tidak ada perbedaan antara dua tipe residual pertama yang Anda pertimbangkan; type="pearson"relevan untuk GLM non-Gaussian, tetapi sama dengan responseuntuk model gaussian.

  2. Pengamatan Anda menerapkan tes Anda untuk (beberapa bentuk residu) tidak independen, sehingga statistik biasa tidak memiliki distribusi yang benar. Lebih lanjut, sebenarnya, tidak ada residu yang Anda anggap normal, karena data Anda tidak akan pernah benar-benar normal. [Pengujian formal menjawab pertanyaan yang salah - pertanyaan yang lebih relevan adalah 'berapa banyak ketidaknormalan ini akan mempengaruhi inferensi saya?', Sebuah pertanyaan yang tidak dijawab oleh pengujian hipotesis goodness of fit yang biasa.]

  3. Sekalipun data Anda benar-benar normal, residual jenis ketiga atau keempat tidak akan benar-benar normal. Namun demikian, jauh lebih umum bagi orang untuk memeriksanya (misalnya dengan plot QQ) daripada residu mentah.

  4. Anda dapat mengatasi beberapa masalah dalam 2. dan 3. (ketergantungan pada residu serta non-normal pada residu standar) dengan simulasi tergantung pada matriks desain Anda (X), artinya Anda dapat menggunakan residu mana saja yang Anda suka (namun Anda tidak dapat menangani masalah "menjawab pertanyaan tidak membantu yang sudah Anda ketahui jawabannya").

Glen_b -Reinstate Monica
sumber