R 回归拟合不匹配的标准误差

R 回归拟合不匹配的标准误差,r,linear-regression,R,Linear Regression,在这一页上 在某些X值下,预测平均值拟合的标准误差 是由 SE = sqrt(MSE* t(X0) %*% XX %*% X0) 当我尝试将置信区间与predict()函数绑定时,它们与exactley不匹配。置信区间接近predict()预测的值,但不精确。这只是精度问题吗 set.seed(1234) x1=1:50 x2=rnorm(50) y=6+5*x1+3*x2+rnorm(50,0,4) l=lm(y~x1+x2) summary(l) new_data=data.frame(

在这一页上

在某些X值下,预测平均值拟合的标准误差

是由

SE = sqrt(MSE* t(X0) %*% XX %*% X0)
当我尝试将置信区间与predict()函数绑定时,它们与exactley不匹配。置信区间接近predict()预测的值,但不精确。这只是精度问题吗

set.seed(1234)
x1=1:50
x2=rnorm(50)
y=6+5*x1+3*x2+rnorm(50,0,4)
l=lm(y~x1+x2)
summary(l)
new_data=data.frame(x1=6,x2=.5)
predict(l,newdata=new_data,type="response",interval="confidence")
我试图匹配这里的置信区间

  fit      lwr      upr
1 37.14178 34.90367 39.37989
以下是以上网页的代码:

MSE <- sum(l$residuals^2)/(length(x)-2)
est=predict(l,newdata=new_data,type="response",interval="confidence")[1]
X= as.matrix(data.frame(x1=rep(1,length(x1)),x1=x1,x2=x2))
XX= solve(t(X)%*%X)
X0= c(1,6,.5)
SE = sqrt(MSE* t(X0) %*% XX %*% X0)
est - qt(.975, length(x)-2-1)*SE
est + qt(.975, length(x)-2-1)*SE

第四个块的第一行有一个错误

MSE <- sum(l$residuals^2)/(length(x)-2)

“MSE”中的x是什么?你可以在问题中添加两次
qt(.975,长度(x)-2-1)
,而它应该是
x1
。向上投票,比我快。
MSE <- sum(l$residuals^2)/(length(x)-2)
MSE <- sum(l$residuals^2)/(length(x1)-3)
> est +c(-1,1)* qt(.975, length(x1)-3)*SE
[1] 34.90367 39.37989