Rプロットパッケージggplot2には、関連する信頼帯を使用して回帰直線(または曲線)をプロットするためのstat_smoothという素晴らしい関数があります。
ただし、回帰線(または「メソッド」)のたびに、この信頼帯がどのように生成されるかを正確に把握するのは困難です。どうすればこの情報を見つけることができますか?
Rプロットパッケージggplot2には、関連する信頼帯を使用して回帰直線(または曲線)をプロットするためのstat_smoothという素晴らしい関数があります。
ただし、回帰線(または「メソッド」)のたびに、この信頼帯がどのように生成されるかを正確に把握するのは困難です。どうすればこの情報を見つけることができますか?
回答:
Details
ヘルプのセクションから
計算は(現在文書化されていない)predictdf汎用関数とそのメソッドによって実行されます。ほとんどの方法では、信頼限界は予測方法を使用して計算されます-例外はtベースの近似を使用するレスであり、glmでは通常の信頼区間がリンクスケールで構築され、応答スケールに逆変換されます。
したがって、predictdfは一般にを呼び出しstats::predict
、次にpredict
smoothingメソッドの正しいメソッドを呼び出します。stat_smooth を含む他の関数も検討するのに役立ちます。
ほとんどのモデル近似関数には、モデルのpredict
メソッドが関連付けられていclass
ます。これらは通常、標準エラーが適合されるかどうかを示すnewdata
オブジェクトと引数se.fit
を取ります。(詳細はをご覧ください?predict
)。
se
滑らかな周囲の信頼区間を表示しますか?(デフォルトでTRUE、制御するレベルを参照
これは、適切な標準エラーを返すために、predictメソッドに直接渡されます(メソッドに依存)
fullrange
フィットはプロットの全範囲に及ぶか、データのみになります
これは、予測が評価されるnewdata
値を定義しますx
level
使用する信頼区間のレベル(デフォルトでは0.95)
信頼区間は(例えば、適切な臨界値を定義することができるようにする方法を予測に直接渡さpredict.lm
用途qt((1 - level)/2, df)
によって乗算される標準誤差のために
n
より滑らかに評価するポイントの数
と組み合わせて使用して、オブジェクトの値fullrange
を定義x
しnewdata
ます。
呼び出しの中でstat_smooth
あなたを定義することができse
、部分的に一致している何であるse.fit
(またはse
)、と定義するinterval
必要があれば引数を。level
信頼区間のレベルを指定します(デフォルトは0.95)。
newdata
オブジェクトは、あなたの設定に応じて、処理内で定義されたfullrange
長さの配列に対してn
プロットまたはデータの完全な範囲内です。
あなたの場合、を使用してrlm
、これはを使用しますpredict.rlm
。
predict.rlm <- function (object, newdata = NULL, scale = NULL, ...)
{
## problems with using predict.lm are the scale and
## the QR decomp which has been done on down-weighted values.
object$qr <- qr(sqrt(object$weights) * object$x)
predict.lm(object, newdata = newdata, scale = object$s, ...)
}
したがってpredict.lm
、qr
分解とscale
引数の適切なスケーリングで内部的に呼び出しています。
predict
メソッドが標準的な方法で設定されている場合、コードが適切に動作することを期待します。最初のコメントで提起された問題に対処するために、回答を編集しました。