最近工作中用到了区间估计,将自己程序中用到的方法整理如下,仅供参考~
interval_estimated <- function(x, sigma=-1, side=0, alpha=0.05){
n <- length(x); xb <- mean(x)
if (sigma >= 0){
if (side < 0){
tmp <- sigma/sqrt(n)*qnorm(1-alpha)
a <- -Inf; b <- xb+tmp
} else if (side > 0){
tmp <- sigma/sqrt(n)*qnorm(1-alpha)
a <- xb-tmp; b <- Inf
} else{
tmp <- sigma/sqrt(n)*qnorm(1-alpha/2)
a <- xb-tmp; b <- xb+tmp
}
df <- n
} else{
if (side < 0){
tmp <- sd(x)/sqrt(n)*qt(1-alpha,n-1)
a <- -Inf; b <- xb+tmp
} else if(side > 0){
tmp <- sd(x)/sqrt(n)*qt(1-alpha,n-1)
a <- xb-tmp; b <- Inf
} else{
tmp <- sd(x)/sqrt(n)*qt(1-alpha/2,n-1)
a <- xb-tmp; b <- xb+tmp
}
df <- n-1
}
data.frame(a=a, b=b)
}在上述方法中,x是数据构成的向量。sigma是总体的标准差,sigma的默认值为-1,当标准差已知的时候,输入相应的值,程序采用正态分布估计区间端点,否则,程序采用t分布估计区间端点。side参数控制单双侧置信区间,默认值为0,当side<0时,求单侧置信区间的上限,当side>0时,求单侧置信区间下限,当side=0时,求双侧置信区间。该方法输出为区间的两个端点的值。
本文介绍了一种区间估计方法,详细解释了如何使用R语言进行单侧及双侧置信区间估计。该方法根据数据集、总体标准差是否已知、以及置信水平等参数来确定置信区间的端点。
5207

被折叠的 条评论
为什么被折叠?



