ggplot如何计算回归的置信区间?


15

R绘图包ggplot2具有一个名为stat_smooth的强大功能,用于绘制带有相关置信带的回归线(或曲线)。

但是,对于每次回归线(或“方法”),我都很难弄清楚如何生成此置信带。我如何找到此信息?


2
请参阅链接中标题为“详细信息”的部分。
斯蒂芬·洛朗

1
@StéphaneLaurent:我已经读过那部分,但是我仍然无法连接点。我使用“ rlm”方法拟合一条线,如何计算置信区间(从数学上讲,什么方程式/算法?)?我如何找到该信息?
static_rtti

1
因此,我认为您应该问一个更精确的问题。
斯蒂芬·洛朗

1
我认为您的问题相当准确...但是我怀疑您在这里不会得到答案。您可能对ggplot2谷歌论坛的运气更好:groups.google.com/forum/?
!

Answers:


22

Details帮助部分

计算是通过(当前未记录的)predictionf泛型函数及其方法执行的。对于大多数方法,使用预测方法来计算置信范围-例外是黄土,它使用基于t的近似值;对于glm,将正常的置信区间构建在链接标度上,然后反变换为响应标度。

因此,predictedf通常会调用stats::predict,而后者又会predict为平滑方法调用正确的方法。其他涉及stat_smooth的功能 也可以考虑使用。

大多数模型拟合函数将具有predictclass模型关联的方法。这些通常将带有一个newdata对象和一个参数se.fit,这些参数和参数将指示是否将符合标准错误。(请参阅参考资料?predict)以获取更多详细信息。

se
显示置信区间是否平滑?(默认为TRUE,请参见要控制的级别

这直接传递给预测方法以返回适当的标准误差(取决于方法)

fullrange
拟合应该跨越图的整个范围,还是仅包含数据

这定义了newdatax在其上评估预测的值

level 要使用的置信区间级别(默认为0.95)

直接传递给预测方法,使得置信区间可以定义相应的临界值(例如predict.lm使用qt((1 - level)/2, df)用于向由相乘标准误差

n 评估时更平滑的点数

与一起使用fullrange以定义对象中的xnewdata

在调用中,stat_smooth您可以定义sese.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.rlm隐藏在MASS中...并且对dictedf的调用将模型,xseq,se和水平参数传递给了predict.rlm ...但是这些值从何而来?好吧,我想这取决于将参数从stat_smooth传递给StatSmooth $ new时发生的情况……然后依次调用...
russellpierce

1
我的观点是,您的答案是朝着正确方向迈出的一步,但是完全回答OP的问题并不像初看起来那么琐碎(尽管有人期望代码会表现得很合理……除非有人完全跟踪它,否则我们不确定。 )
russellpierce

2
如果predict已经以一种标准方式设置了该方法,则确实希望代码能够表现出合理的行为。我已经对答案进行了修改,以解决您在第一条评论中提出的问题。
mnel

@mnel:非常感谢您提供了非常详细和有用的答案!
static_rtti
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.