让我们看下面的例子:
set.seed(342)
x1 <- runif(100)
x2 <- runif(100)
y <- x1+x2 + 2*x1*x2 + rnorm(100)
fit <- lm(y~x1*x2)
这将使用 OLS 回归基于 x1 和 x2 创建一个 y 模型。如果我们希望预测给定 x_vec 的 y,我们可以简单地使用从summary(fit)
.
但是,如果我们想预测 y 的下预测和上预测怎么办?(对于给定的置信水平)。
那么我们将如何构建公式呢?
让我们看下面的例子:
set.seed(342)
x1 <- runif(100)
x2 <- runif(100)
y <- x1+x2 + 2*x1*x2 + rnorm(100)
fit <- lm(y~x1*x2)
这将使用 OLS 回归基于 x1 和 x2 创建一个 y 模型。如果我们希望预测给定 x_vec 的 y,我们可以简单地使用从summary(fit)
.
但是,如果我们想预测 y 的下预测和上预测怎么办?(对于给定的置信水平)。
那么我们将如何构建公式呢?
您将需要矩阵算术。我不确定 Excel 会如何处理。无论如何,这里是细节。
假设您的回归写为.
让是包含预测的预测变量值的行向量(格式与)。然后预测由下式给出
您是否偶然发现了不同类型的预测区间?predict.lm
手册页有
## S3 method for class 'lm'
predict(object, newdata, se.fit = FALSE, scale = NULL, df = Inf,
interval = c("none", "confidence", "prediction"),
level = 0.95, type = c("response", "terms"),
terms = NULL, na.action = na.pass,
pred.var = res.var/weights, weights = 1, ...)
和
设置“区间”指定在指定“级别”计算置信区间或预测(容差)区间,有时称为窄区间与宽区间。
你是这么想的吗?
@Tal:我可以建议Kutner 等人作为线性模型的绝佳来源。
之间有区别
它们都在文本中详细介绍。
我认为您正在寻找置信区间的公式那就是在哪里拥有df 和是标准误,