【发布时间】:2022-01-13 03:39:16
【问题描述】:
创建一个包含 100 个观察值的模拟数据集,其中 x 是一个随机正态变量,平均值为 0,标准差为 1,y = 0.1 + 2 * X + e,其中 epsilon 也是一个随机正态误差,平均值为 0 和 sd 1.
set.seed(1)
# simulate a data set of 100 observations
x <- rnorm(100)
y.1 <- 0.1 + 2*x + rnorm(100)
现在提取前 5 个观察值。
y1.FirstFive <- (y.1[1:5]) # extract first 5 observations from y
x.FirstFive <- (x[1:5]) # extract first 5 observations from x
y1.FirstFive # extracted 5 observations from y1
[1] -1.7732743 0.5094025 -2.4821789 3.4485904 0.1044309
x.FirstFive # extracted 5 observations from x
[1] -0.6264538 0.1836433 -0.8356286 1.5952808 0.3295078
假设您从前五个观察值计算的样本的平均值和标准偏差不会改变,那么您需要能够得出总体的真实平均值不同于0 在 p = 0.01 的置信水平上?
alpha <- 0.01
mu <- 0
for (i in 5:2000) {
# Recalculate the standard error and CI
stand_err <- Sd_y1 / sqrt(i)
ci <- sample_mean_y1 + c(qt(alpha/2, i-1), qt(1-alpha/2, i-1))*stand_err
if (ci[2] < mu)
break # condition met, exit loop
}
i
[1] 2000
在这里,我编写了一个循环,将 n 从初始 n=5 迭代增加到 n=2000,使用 pt 找到 p 值(给定一个固定的 y-bar 和 sd),并在 p
- 附加信息:y1.FirstFive 的 sd = 2.3 和 y1.FirstFive 的平均值 = -0.04
【问题讨论】:
标签: r statistics