r - 如何在 R 中生成具有 90% 置信区间的回归函数的斜率?
问题描述
我正在研究一个基于数据集的问题,该数据集涉及为客户提供服务呼叫的复印机业务。该数据集是一组 45 个实例,描述了在服务调用上花费的分钟数 (v1) 和客户拥有的复印机数量 (v2)。
问题如前所述:
估计复印机数量增加 1 时平均服务时间的变化。使用 90% 的置信区间。
我将此解释为创建一个回归函数来导出斜率,这大约是“复印机数量增加 1 时平均服务时间的变化”。但是,我不知道如何在 90% 的置信区间内做到这一点。
到目前为止,回归函数是这样生成的:
data <-read.table("url")
lm(reformulate(names(d)[2], names(d)[1], data = d)
我得到以下信息:
Coefficients:
(Intercept) V2
-0.5802 15.0352
编辑:
运行 summary(),我得到:
Call:
lm(formula = reformulate(names(d)[2], names(d)[1]), data = d)
Residuals:
Min 1Q Median 3Q Max
-22.7723 -3.7371 0.3334 6.3334 15.4039
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.5802 2.8039 -0.207 0.837
V2 15.0352 0.4831 31.123 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 8.914 on 43 degrees of freedom
Multiple R-squared: 0.9575, Adjusted R-squared: 0.9565
F-statistic: 968.7 on 1 and 43 DF, p-value: < 2.2e-16
b1(斜率)的置信区间为:
b1 +/- t *(标准误差)
那么这是正确的吗?:
15.0352 +/- (.4831 * 31.123)
解决方案
你是对的,“Wald 类型”置信区间将计算为 b1 +/- t *(标准误差)。但是,该等式中的“t”是关键 t 值,而不是模型摘要中报告的 t 值。
您可以在 R 中查找具有 43 个自由度的 90% CI 的临界 t 值,如下所示:
> # use 0.05 since it's a two-sided test
> qt(p = 0.05, df = 43, lower.tail = FALSE)
[1] 1.681071
那么您的 CI 将是 b1 +/- 1.68 *(标准错误)。
您可以使用该confint()
函数在 R 中仔细检查这一点。
例如:
mod1 = lm(reformulate(names(d)[2], names(d)[1], data = d)
confint(mod1, level = 0.90) # will give 5% and 95% values
推荐阅读
- csv - ArcGIS Pro 2.8.0:将 XY 数据转换为 shapefile
- html - 如何让动画 .svg 元素随窗口大小调整大小,但保持在屏幕上的位置?
- flutter - 如何在颤动中为这样的导航按钮制作指示器?
- javascript - 当另一个元素具有焦点时,如何显示按钮?
- python - 用于获取此祖父母的 XPath 表达式
- google-cloud-platform - 有没有办法在 Google Cloud Vision API 文档文本检测中指定文档中的所有字母都大写
- servlets - 如何避免超时请求(客户端)仍在服务器中处理
- regex - 查找字符串中的变音符号
- python - 为什么在使用“:=”时变量在嵌套 lambda 中被视为本地变量?
- java - Spring Boot在分页中跳过和复制项目