如何在 r 中使用 confit() 函数
您可以使用 R 中的confint()函数来计算拟合回归模型中一个或多个参数的置信区间。
该函数使用以下基本语法:
confint(对象,参数,级别=0.95)
金子:
- object : 拟合回归模型的名称
- parm :计算置信区间的参数(默认为全部)
- level :要使用的置信度(默认值为 0.95)
下面的例子展示了如何在实际中使用这个功能。
示例:如何在 R 中使用 confit() 函数
假设我们在 R 中有以下数据框,显示了班级 10 名学生的学习小时数、参加的模拟考试次数以及期末考试成绩:
#create data frame df <- data. frame (score=c(77, 79, 84, 85, 88, 99, 95, 90, 92, 94), hours=c(1, 1, 2, 3, 2, 4, 4, 2, 3, 3), prac_exams=c(2, 3, 3, 2, 4, 5, 4, 3, 5, 4)) #view data frame df score hours prac_exams 1 77 1 2 2 79 1 3 3 84 2 3 4 85 3 2 5 88 2 4 6 99 4 5 7 95 4 4 8 90 2 3 9 92 3 5 10 94 3 4
现在假设我们想要在 R 中拟合以下多元线性回归模型:
考试成绩 = β 0 + β 1 (小时)+ β 2 (实践考试)
我们可以使用lm()函数来适应这个模型:
#fit multiple linear regression model fit <- lm(score ~ hours + prac_exams, data=df) #view summary of model summary(fit) Call: lm(formula = score ~ hours + prac_exams, data = df) Residuals: Min 1Q Median 3Q Max -2.4324 -1.2632 -0.8956 0.4316 5.1412 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 68.4029 2.8723 23.815 5.85e-08 *** hours 4.1912 0.9961 4.207 0.0040 ** prac_exams 2.6912 0.9961 2.702 0.0306 * --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 2.535 on 7 degrees of freedom Multiple R-squared: 0.9005, Adjusted R-squared: 0.8721 F-statistic: 31.68 on 2 and 7 DF, p-value: 0.0003107
请注意,模型摘要显示拟合回归系数:
- 截距 = 68.4029
- 小时 = 4.1912
- prac_exams = 2.6912
要获得每个系数的 95% 置信区间,我们可以使用confint()函数:
#calculate 95% confidence interval for each coefficient in model
confined(fit)
2.5% 97.5%
(Intercept) 61.6111102 75.194772
hours 1.8357237 6.546629
prac_exams 0.3357237 5.046629
每个参数的 95% 置信区间如下所示:
- 截距 95% CI = [61.61, 75.19]
- 小时 95% CI = [1.84, 6.55]
- prac_exams 的 95% CI = [0.34, 5.05]
要计算 99% 置信区间,只需更改level参数的值:
#calculate 99% confidence interval for each coefficient in model confint(fit, level= 0.99 ) 0.5% 99.5% (Intercept) 58.3514926 78.454390 hours 0.7052664 7.677087 prac_exams -0.7947336 6.177087
要仅计算特定参数的置信区间,只需使用parm参数指定系数:
#calculate 99% confidence interval for hours confint(fit, parm=' hours ', level= 0.99 ) 0.5% 99.5% hours 0.7052664 7.677087
请注意,仅显示小时变量的 99% 置信区间。
其他资源
以下教程提供了有关 R 中线性回归的更多信息:
如何解释 R 中的回归输出
如何在 R 中执行简单线性回归
如何在 R 中执行多元线性回归
如何在 R 中执行逻辑回归