4

R では、外れ値に番号を付ける方法を考えていますqqnorm(以下の赤丸で囲みました)。

ここに例があります。私は線形回帰を行います:

lm1 <- lm (y ~ x)

次に、モデルをプロットします。

plot(lm1)

これにより、非常に優れた QQ プロットが生成されます。外れ値に番号が付けられていることがわかります (これを赤丸で囲みました)。

ここに画像の説明を入力

ただし、独自の qqnorm を実行すると、外れ値に番号が付けられません。前のグラフのように、これらの外れ値に番号を付けるにはどうすればよいでしょうか?

qqnorm(y)
qqline(y)

ここに画像の説明を入力

4

3 に答える 3

4

コードを見て学ぶ:

 plot.lm
 # snipping the rather long output top and bottom and showing hte relevant section
 if (show[2L]) {
    ylim <- range(rs, na.rm = TRUE)
    ylim[2L] <- ylim[2L] + diff(ylim) * 0.075
    dev.hold()
    qq <- qqnorm(rs, main = main, ylab = ylab23, ylim = ylim, 
        ...)
    if (qqline) 
        qqline(rs, lty = 3, col = "gray50")
    if (one.fig) 
        title(sub = sub.caption, ...)
    mtext(getCaption(2), 3, 0.25, cex = cex.caption)
    if (id.n > 0) 
        text.id(qq$x[show.rs], qq$y[show.rs], show.rs)
    dev.flush()
于 2013-02-21T22:44:59.840 に答える
2

@DWin の回答に基づいて、次の行を追加すると:

text(qq$x[44]-0.2, qq$y[44], 44)

次に、プロットに数値を追加します。

ここに画像の説明を入力

これを適切に行うには、次のコードを記述する必要があります。

  • qqnorm によって返された x、y 値を順番に並べ替えます (x、y 値の各ペアを一緒に保持するようにしてください)。
  • 最初の 3 つと最後の 3 つにインデックス番号を付けます。

探索的データ分析のみに QQ プロットを使用しているため、Roman Luštrik による次の回答の方がはるかに簡単です。

plot(lm1, which = 2)
于 2013-02-22T16:24:47.247 に答える