如何" plot.gam"计算置信区间?

时间:2017-06-04 22:14:53

标签: r plot regression gam mgcv

如果使用mgcv拟合模型,然后绘制平滑项,

m <- gam(y ~ s(x))
plot(m, shade = TRUE)

然后你得到一个带有置信区间的曲线图。我认为这些是逐点置信区间。他们是如何计算的?

我试着写

object <- plot(m, shade = true)
object[[1]]$fit +- 2*object[[1]]$se

为了使用标准误差和乘数2提取下限和上限,但是当我绘制它时,它看起来与plot.gam绘制的置信区间有点不同?

那么,这些是如何计算的?

我不使用seWithMean = true或类似的东西。

1 个答案:

答案 0 :(得分:2)

这是1个标准差。

oo <- plot.gam(m)
oo <- oo[[1]]
points(oo$x, oo$fit, pch = 20)
points(oo$x, oo$fit - oo$se, pch = 20)

可重复的例子:

x <- seq(0, 2 * pi, length = 100)
y <- x * sin(x) + rnorm(100, 0, 0.5)
m <- gam(y ~ s(x))