ggplot 如何計算回歸的置信區間?
R 繪圖包 ggplot2 有一個很棒的函數,稱為stat_smooth,用於繪製帶有相關置信帶的回歸線(或曲線)。
但是,對於每次回歸線(或“方法”),我很難弄清楚這個置信帶是如何生成的。我怎樣才能找到這些信息?
從
Details
幫助部分計算由(當前未記錄的)predictdf 泛型函數及其方法執行。對於大多數方法,置信區間是使用 predict 方法計算的 - 例外情況是使用基於 t 的近似值的 loess,而對於 glm,在鏈接尺度上構建正常置信區間,然後再轉換為響應尺度。
因此predictdf通常會調用
stats::predict
,而後者又會調用predict
平滑方法的正確方法。其他涉及stat_smooth 的函數也值得考慮。大多數模型擬合函數將具有與模型
predict
相關聯的方法class
。這些通常會採用一個newdata
對象和一個參數se.fit
來表示是否適合標準錯誤。(請參閱?predict
)了解更多詳情。
se
顯示置信區間是否平滑?(默認為 TRUE,請參見要控制的級別
這直接傳遞給 predict 方法以返回適當的標準錯誤(取決於方法)
fullrange
擬合應該跨越繪圖的整個範圍,還是只是數據
這定義了將評估預測的
newdata
值x
level
要使用的置信區間水平(默認為 0.95)直接傳遞給 predict 方法,以便置信區間可以定義適當的臨界值(例如,
predict.lm
用於qt((1 - level)/2, df)
將標準誤差乘以
n
評估更平滑的點數與 結合使用
fullrange
來定義對像x
中的值newdata
。在對您的調用中,
stat_smooth
您可以定義與(或)se
部分匹配的內容,並在必要時定義參數。將給出置信區間的水平(默認為 0.95)。se.fit``se``interval``level
對
newdata
像是在處理過程中定義的,具體取決於您設置的整個繪圖或數據范圍內的fullrange
長度序列。n
在您的情況下, using
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