4

我使用 np 包 (npreg) 运行非参数回归,并尝试为感兴趣的变量 x1 绘制我的结果,并将所有其他变量保持在它们的均值/模式下。

library("np")

y  <- rnorm(100)
x1 <- rnorm(100,10,30)
x2 <- rbinom(100,1,0.5)
x3 <- rbinom(100,1,0.5)

model.np <- npreg(y ~ x1 + x2 + x3)
plot(model.np)

这些图正是我想要的,但我无法弄清楚如何“手动”单独生成它们。特别是,我只想要第一个(三个)输出图。

4

1 回答 1

2

显然,可以在 npplot-routine 的帮助文件中找到详细的答案,其中 plot.behavior 是关键参数。

对于我的示例,仅绘制 x1-graph 可以通过以下方式完成:

nlmodel.plot <- plot(model.np, plot.behavior="data")

y.eval <- fitted(nlmodel.plot$r1) #fit partial regression model for r1=airnoise
y.se <- se(nlmodel.plot$r1) #grab SE from botstrap 
y.lower.ci <- y.eval + logp.se[,1] #lower CI
y.upper.ci <- y.eval + logp.se[,2] #upper CI

x1.eval <- nlmodel.plot$r1$eval[,1]  #grab x1 values saved in plot$r1

plot(x1,y)
 lines(x1.eval,y.eval)
 lines(x1.eval,y.lower.ci,lty=3)
 lines(x1.eval,y.upper.ci,lty=3)
于 2012-11-15T16:22:21.273 回答