#求单正态均值mu的置信区间
#参数依次为置信水平alpha,正态样本x,已知总体方差(默认为未知)
mu <- function(alpha,x,sigma=NA){
n <- length(x)
meanx <- mean(x)
if(is.na(sigma)){
t1 <- qt(1-alpha/2,n-1)
t2 <- qt(1-alpha,n-1)
mu11 <- meanx - t1*sqrt(sum((x-meanx)^2)/(n-1))/sqrt(n)
mu12 <- meanx + t1*sqrt(sum((x-meanx)^2)/(n-1))/sqrt(n)
mu21 <- meanx + t2*sqrt(sum((x-meanx)^2)/(n-1))/sqrt(n)
mu22 <- meanx - t2*sqrt(sum((x-meanx)^2)/(n-1))/sqrt(n)
}
else{
u1 <- qnorm(1-alpha/2,0,1)
u2 <- qnorm(1-alpha,0,1)
mu11 <- meanx - u1*sigma/sqrt(n)
mu12 <- meanx + u1*sigma/sqrt(n)
mu21 <- meanx + u2*sigma/sqrt(n)
mu22 <- meanx - u2*sigma/sqrt(n)
}
string1 <- paste('以1-',alpha,'为置信水平的mu双侧置信区间为:[',mu11,', ',mu12,']。',sep='')
string2 <- paste('以1-',alpha,'为置信水平的mu单侧置信区间上限为:',mu21,'。',
R语言——自定义函数求置信区间
最新推荐文章于 2024-08-15 02:59:13 发布