2017-06-04 54 views
0

如果模型是使用mgcv安装然后顺利术语绘制,“plot.gam”置信区间是如何计算的?

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或类似的东西。

+0

我想通了我自己,其实,不过是的,你会因为它与我发现了什么同意获得复选标记。 – Jaood

回答

1

它是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))