線形モデルの残差に対してShapiro WilkのW検定とKolmogorov-Smirnov検定を実行して、正規性を確認したいと思います。私はこれにどの残差を使用すべきかと思っていました-生の残差、ピアソンの残差、スチューデント化された残差、または標準化された残差?Shapiro-WilkのW検定の場合、生およびピアソンの残差の結果は同一であるように見えますが、他の結果はそうではありません。
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
KSについても同じ質問です。また、次のように残差を正規分布(pnorm)に対してテストする必要があるかどうか
ks.test(res1, "pnorm") # D = 0.296, p-value = 0.005563
または、自由度nk-2のt学生分布、次のように
ks.test(res3, "pt",df=nrow(mtcars)-2-2)
何かアドバイスはありますか?また、分布が正規性に十分に近く、推論にあまり影響を与えないために、テスト統計W(> 0.9?)およびDの推奨値は何ですか?
最後に、このアプローチは、フィットされたlm係数の不確実性を考慮していますか、またはこの点cumres()
でパッケージ内gof()
で機能する方が良いでしょうか?
乾杯、トム