如何模拟重要数据
How to simulate significant data
我想在 R 中模拟显着分布:为此我想指定一个共同的 M 和 SD(第 1 组与第 2 组相结合)、样本量和两组之间的效应量 (Cohen's d)并在效果足够大时通过 t 检验获得显着的数据。
有人可以给我一些建议吗?
我们将假设每组的 SD 相同且样本量相等(如果您想放宽这些假设,您将不得不自己做代数!),因此合并 SD = 组内 SD。 Cohen's D 是 (M2-M1)/SD,或 (delta_M/SD),所以 delta_M = SD*Cohen_D。 M1=M-delta_M/2, M2=M+delta_M/2.
M <- 2 # grand mean
C <- 2 # Cohen's D
S <- 1 # pooled SD
delta_M <- S*C
m <- c(M-delta_M/2,M+delta_M/2) # specify means for each group
n <- c(20,20) # sample size for each group
set.seed(101)
## generate Normal deviates for each group
grp1 <- rnorm(n[1],mean=m[1],sd=S)
grp2 <- rnorm(n[2],mean=m[2],sd=S)
## run t-test
t.test(grp1,grp2)
Welch Two Sample t-test
data: grp1 and grp2
t = -7.1805, df = 37.503, p-value = 1.511e-08
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-2.682429 -1.502160
sample estimates:
mean of x mean of y
0.9026826 2.9949771
我想在 R 中模拟显着分布:为此我想指定一个共同的 M 和 SD(第 1 组与第 2 组相结合)、样本量和两组之间的效应量 (Cohen's d)并在效果足够大时通过 t 检验获得显着的数据。 有人可以给我一些建议吗?
我们将假设每组的 SD 相同且样本量相等(如果您想放宽这些假设,您将不得不自己做代数!),因此合并 SD = 组内 SD。 Cohen's D 是 (M2-M1)/SD,或 (delta_M/SD),所以 delta_M = SD*Cohen_D。 M1=M-delta_M/2, M2=M+delta_M/2.
M <- 2 # grand mean
C <- 2 # Cohen's D
S <- 1 # pooled SD
delta_M <- S*C
m <- c(M-delta_M/2,M+delta_M/2) # specify means for each group
n <- c(20,20) # sample size for each group
set.seed(101)
## generate Normal deviates for each group
grp1 <- rnorm(n[1],mean=m[1],sd=S)
grp2 <- rnorm(n[2],mean=m[2],sd=S)
## run t-test
t.test(grp1,grp2)
Welch Two Sample t-test
data: grp1 and grp2
t = -7.1805, df = 37.503, p-value = 1.511e-08
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-2.682429 -1.502160
sample estimates:
mean of x mean of y
0.9026826 2.9949771