コード(plot.lm
かっこなしの単純な型、またはedit(plot.lm)
Rプロンプト)を見ると、クックの距離がcooks.distance()
関数を使用して44行目に定義されていることがわかります。機能を確認するには、stats:::cooks.distance.glm
Rプロンプトで入力します。そこで定義されていることがわかります
(res/(1 - hat))^2 * hat/(dispersion * p)
ここで、res
はピアソン残差(influence()
関数から返される)、hat
はハット行列、p
はモデルのパラメーター数dispersion
、現在のモデルで考慮される分散です(ロジスティック回帰とポアソン回帰では1に固定、を参照help(glm)
)。要約すると、それは観測値のレバレッジとそれらの標準化された残差の関数として計算されます。(と比較してくださいstats:::cooks.distance.lm
。)
より正式な参照については、plot.lm()
関数内の参照に従うことができます。
Belsley、DA、Kuh、E.およびWelsch、RE(1980)。回帰診断。ニューヨーク:ワイリー。
さらに、グラフィックに表示される追加情報について、さらに調べるとRが
plot(xx, rsp, ... # line 230
panel(xx, rsp, ...) # line 233
cl.h <- sqrt(crit * p * (1 - hh)/hh) # line 243
lines(hh, cl.h, lty = 2, col = 2) #
lines(hh, -cl.h, lty = 2, col = 2) #
どこrsp
STDとしてラベル付けされます。ピアソン常駐。GLMの場合、標準。それ以外の場合は残差(172行目)ただし、どちらの場合も、Rで使用される式は(175行目と178行目)です。
residuals(x, "pearson") / s * sqrt(1 - hii)
どこhii
ハット行列は、一般的な関数によって返されますlm.influence()
。これはstdの通常の式です。残差:
rsj=rj1−h^j−−−−−√
ここで、は対象の番目の共変量を示します。例えば、Agresti Categorical Data Analysis、§4.5.5を参照してください。jjj
Rコードの次の行は、(クックの距離のためのスムーズなを描くadd.smooth=TRUE
にはplot.lm()
、デフォルトで参照getOption("add.smooth")
)と重要な標準化残差のための等高線(あなたのプロットでは見えないが)(参照cook.levels=
オプション)。