0

嘿,我怎样才能导出用于制作我为下面的线性回归模型生成的图表的结果表。

d <- data.frame(x=c(200110,86933,104429,240752,255332,75998,
                    204302,97321,342812,220522,110990,259706,65733),
                y=c(200000,110000,165363,225362,313284,113972,
                    137449,113106,409020,261733,171300,344437,89000))

lm1 <- lm(y~x,data=d)

p_conf1 <- predict(lm1,interval="confidence")


nd <- data.frame(x=seq(0,80000,length=510000))
p_conf2 <- predict(lm1,interval="confidence",newdata=nd)



plot(y~x,data=d,ylim=c(-21750,600000),xlim=c(0,600000)) ## data
abline(lm1) ## fit
matlines(d$x,p_conf1[,c("lwr","upr")],col=2,lty=1,type="b",pch="+")

matlines(nd$x,p_conf2[,c("lwr","upr")],col=4,lty=1,type="b",pch="+")
4

2 回答 2

1

仍然不完全确定您想要什么,但这似乎是合理的:

dat1 <- data.frame(d,p_conf1)
dat2 <- data.frame(nd,y=NA,p_conf2)
write.csv(rbind(dat1,dat2),file="linpredout.csv")

它包括x, y(等于观察值或NA对于未观察到的点)、预测值fitlwr/upr边界。

编辑:修正错字。

于 2012-12-27T18:25:54.433 回答
0

这将返回一个矩阵,其中包含构建置信区间所需的一些信息:

> coef(summary(lm1))
                Estimate   Std. Error   t value     Pr(>|t|)
(Intercept) 21749.037058 2.665203e+04 0.8160369 4.317954e-01
x               1.046954 1.374353e-01 7.6177997 1.037175e-05

任何关于线性回归的文本都应该有置信区间的公式。您可能需要根据您使用的公式计算一些辅助量。predict 的代码是可见的......只需在控制台输入:

predict.lm

并且不要忘记置信区间与预测区间不同。

于 2012-12-27T17:50:47.950 回答