首页 > 解决方案 > 计算均值的 95% 置信区间

问题描述

我有一个练习说

求当 x2=2300,x7=56 和 x8=2100 时球队平均获胜场数的 95% 置信区间。

R中是否有一个函数可以直接给出这样的置信区间?

我考虑过使用该函数 confint(f),但是当它是关于一个或多个参数时,这个函数会给出结果,据我所知,我没有参数,而是一个像 beta0+beta1xi 这样的函数,其中参数 beta 已经是估计,点 xi 将是 x2、x7 和 x8。

另一种方法是“手动”进行,但这很复杂,因为我必须计算标准误差、方差、t 值等。

你能帮忙吗?

先感谢您

标签: rstatisticsregressionlinear-regressionconfidence-interval

解决方案


你需要不看confint但是predict.lm

细节

predict.lm生成预测值,通过评估框架 newdata(默认为 model.frame(object))中的回归函数获得。如果逻辑 se.fit 为 TRUE,则计算预测的标准误差。如果设置了数字参数比例(带有可选的 df),则在计算标准误差时将其用作残差标准差,否则从模型拟合中提取。设置区间指定在指定级别计算置信区间或预测(容差)区间,有时称为窄区间与宽区间。

您需要设置一个数据框,其列名与模型拟合中使用的列名相同,其中包含您想要预测的设置值,用于newdata参数。

这是一个显示如何使用的示例newdata

x1<-c(1,2,5,6); x2<-c(3,2,4,1); x3<-c(5,4,3,4); y<-c(21,21,27,23)
res<-lm(y~x1+x2+x3)
predict.lm(res,newdata=data.frame(x1=4,x2=4,x3=2),
            interval="confidence")

(即你需要一些表格data.frame(x2= ..., x7=...等,但你在哪里填写你想要的值)

但是,您还需要告诉它您需要的间隔类型。

predict是通用的;如果你调用predict一个lm对象,它会调用predict.lm,但要获得正确的帮助,你需要直接查看特定的函数)


推荐阅读