R中的置信区间计算
Confidence interval calculation in R
我在尝试计算 R 中的 CI 时发现了差异:
x=c(25,30,15,45,22,54)
#IC 1
install.packages("Rmisc")
library(Rmisc)
CI(x,0.95) # [16.30429 ; 47.36238]
#IC2
lclm=mean(x)-(1.96*sd(x)/sqrt(length(x))) #19.99285
Uclm=mean(x)+(1.96*sd(x)/sqrt(length(x))) #43.67382
我想知道为什么我用这两种方式没有得到相同的间隔。
谢谢!
您的 1.96 是标准正态分布中所需分位数的近似值,随着样本量趋于无穷大,标准正态分布渐近等同于学生 t 分布。如果您的样本量为 N = 6,则标准正态分布和学生 t 分布之间存在相当大的差异。
这是根据 Stéphane 的评论计算所需分位数的方法:
library(Rmisc)
x <- c(25, 30, 15, 45, 22, 54)
#IC 1
CI(x, 0.95)
#> upper mean lower
#> 47.36238 31.83333 16.30429
#IC2
m <- mean(x)
s <- sd(x)
n <- length(x)
q <- qt(1 - 0.05 / 2, n - 1)
c(
"upper" = m + q * s / sqrt(n),
"mean" = m,
"lower" = m - q * s / sqrt(n)
)
#> upper mean lower
#> 47.36238 31.83333 16.30429
由 reprex package (v1.0.0)
于 2021-04-09 创建
除了 the-mad-statter 和 Stéphane。
这是Rmisc
包中计算CI的函数:
function (x, ci = 0.95)
{
a <- mean(x)
s <- sd(x)
n <- length(x)
error <- qt(ci + (1 - ci)/2, df = n - 1) * s/sqrt(n)
return(c(upper = a + error, mean = a, lower = a - error))
}
在这里您可以找到更深入的信息:
https://stats.stackexchange.com/questions/467015/what-is-the-confidence-interval-formula-that-rmisc-package-in-r-uses
我在尝试计算 R 中的 CI 时发现了差异:
x=c(25,30,15,45,22,54)
#IC 1
install.packages("Rmisc")
library(Rmisc)
CI(x,0.95) # [16.30429 ; 47.36238]
#IC2
lclm=mean(x)-(1.96*sd(x)/sqrt(length(x))) #19.99285
Uclm=mean(x)+(1.96*sd(x)/sqrt(length(x))) #43.67382
我想知道为什么我用这两种方式没有得到相同的间隔。 谢谢!
您的 1.96 是标准正态分布中所需分位数的近似值,随着样本量趋于无穷大,标准正态分布渐近等同于学生 t 分布。如果您的样本量为 N = 6,则标准正态分布和学生 t 分布之间存在相当大的差异。
这是根据 Stéphane 的评论计算所需分位数的方法:
library(Rmisc)
x <- c(25, 30, 15, 45, 22, 54)
#IC 1
CI(x, 0.95)
#> upper mean lower
#> 47.36238 31.83333 16.30429
#IC2
m <- mean(x)
s <- sd(x)
n <- length(x)
q <- qt(1 - 0.05 / 2, n - 1)
c(
"upper" = m + q * s / sqrt(n),
"mean" = m,
"lower" = m - q * s / sqrt(n)
)
#> upper mean lower
#> 47.36238 31.83333 16.30429
由 reprex package (v1.0.0)
于 2021-04-09 创建除了 the-mad-statter 和 Stéphane。
这是Rmisc
包中计算CI的函数:
function (x, ci = 0.95)
{
a <- mean(x)
s <- sd(x)
n <- length(x)
error <- qt(ci + (1 - ci)/2, df = n - 1) * s/sqrt(n)
return(c(upper = a + error, mean = a, lower = a - error))
}
在这里您可以找到更深入的信息: https://stats.stackexchange.com/questions/467015/what-is-the-confidence-interval-formula-that-rmisc-package-in-r-uses