问题描述
我先说我仍在学习 R 语言,并且对 R 中的幂曲线非常陌生。在 Rui Barradas 的帮助下,我可以创建一个 for 循环来显示两个的幂曲线-sample t 检验到固定样本大小 (n1=65,n2=65) 使用下面的代码。它导致 lovely power curve 具有最小的可检测效应大小和 80% 的功率注释。
#Effect size
d_seq <- seq(0,2,by = 0.1)
pwr_list <- lapply(d_seq,function(d){
pwr.t2n.test(n1 = 65,n2 = 65,d = d,power = NULL,sig.level = 0.05,alternative = "two.sided")
})
pwr <- sapply(pwr_list,'[[','power')
#Extract required elements into a data frame for plotting.
dfpwr <- data.frame(power = pwr,effect.size = d_seq)
pwr80 <- approx(x = pwr,y = d_seq,xout = 0.8)
lbl80 <- paste("Power = 80%\n")
lbl80 <- paste(lbl80,"Effect size =",round(pwr80$y,2))
ggplot(dfpwr,aes(effect.size,power)) +
geom_point(size = 2,colour = "black") +
geom_line(size = 0.5,colour = "red") +
geom_hline(yintercept = 0.8,linetype = "dotted") +
geom_text(x = pwr80$y,y = pwr80$x,label = lbl80,hjust = 1,vjust = -1) +
scale_y_continuous() +
xlab("effect size") +
ylab(expression("test power =" ~ 1 - beta))
现在我有兴趣在同一张图上绘制几条功效曲线——每条都有不同的标准偏差——在 x 轴上绘制的均值(效果大小)不同。使用上面的示例,预测每组中的 n=65,其中一组平均为 40 (SD 6),另一组为 43 (SD 6)。 Cohen 的 d 将为 (43-40)/6=0.5。
我能否更新上面的代码以在 x 轴(范围 0-6)和三个标准差为 4、6 或 8 的功效曲线上具有差异? Like this example(忽略中间的注释)。
我觉得我需要做一些类似 this page 的事情,但我很挣扎、很沮丧,而且仍然不知道从哪里开始。
预先感谢您的耐心和帮助。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)