我想为R中的正态分布值的向量计算一个置信区间。手动执行此操作不会很麻烦,但是肯定有一个内置函数。我似乎找不到。有什么想法吗?
答案 0 :(得分:1)
我不确定是否有此功能,但是一种简单的方法是仅使用截距拟合模型,并使用confint
函数从中提取置信区间。
set.seed(1)
x <- rnorm(20)
m <- lm(x~1)
confint(m)
2.5 % 97.5 %
(Intercept) -0.236892 0.6179398
答案 1 :(得分:1)
没有一个仅用于此目的的内置函数。我想原因是手动计算确实非常容易。就像@bobbel的答案一样,
set.seed(1)
x <- rnorm(20)
那么提取间隔的一种方法是
t.test(x)$conf.int
# [1] -0.2368920 0.6179398
# attr(,"conf.level")
# [1] 0.95
这不是一个坏主意,因为无论如何您通常都会想要进行测试。至于仅获取间隔,您将需要定义自己的函数,例如
normConfInt <- function(x, alpha = 0.05)
mean(x) + qt(1 - alpha / 2, length(x) - 1) * sd(x) / sqrt(length(x)) * c(-1, 1)
normConfInt(x)
# [1] -0.2368920 0.6179398