假设我们有一个大小为 n = 8 的随机样本,来自对数正态分布,参数为 mu 和 sigma。由于它是一个小样本,因此我将使用非正态总体中的 t 置信区间。我进行了模拟以确定 90% t-CI 的真实(模拟)CI,其中 mu=1 和 sigma=1.5
我的问题是我下面的代码遵循正态分布,它需要是对数正态分布。我知道 rnorm 必须成为 rlnorm 以便随机变量来自对数分布。但我需要改变 mu 和 sigma 是什么。正态分布中的 Mu 和 sigma 在对数分布中不同。
对数分布中的 Mu = exp(μ + 1/2 σ^2)。而 sigma 是 exp (2 (μ+sigma^2)) – exp2 (μ+sigma^2)
我只是对如何将这两个方程合并到我的代码中感到困惑。
顺便说一句-如果您还没有猜到,我对 R 非常陌生。任何帮助将不胜感激!
MC <- 10000 # Number of samples to simulate
result <- c(1:MC)
mu <- 1
sigma <- 1.5
n <- 8; # Sample size
alpha <- 0.1 # the nominal confidence level is 100(1-alpha) percent
t_criticalValue <- qt(p=(1-alpha/2), df=(n-1))
for(i in 1:MC){
mySample <- rlnorm(n=n, mean=mu, sd=sigma)
lowerCL <- mean(mySample)-t_criticalValue*sd(mySample)/sqrt(n)
upperCL <- mean(mySample)+t_criticalValue*sd(mySample)/sqrt(n)
result[i] <- ((lowerCL < mu) & (mu < upperCL))
}
SimulatedConfidenceLevel <- mean(result)
编辑:所以我尝试用各自的公式替换 mu 和 sd ......
(mu=exp(μ + 1/2 σ2) 西格玛= exp(2μ + σ2)(exp(σ2) - 1)
我得到了 5000 的模拟信心水平。