【发布时间】:2021-08-13 13:50:52
【问题描述】:
我想估计不同水平的 N 和 SD 的最小可检测效应大小。功率始终固定为 0.8,alpha 始终固定为 0.05。
这是我目前的代码:
library(pwr)
power_fcn <- function(.x){
power.t.test(n = .x, d = NULL, power = 0.8, sig.level = 0.05, alternative = "two.sided")
}
power_df <-
map_dfr(
.x = seq(10000, 30000, by = 5000),
.f = power_fcn
)
但是上面返回这个错误:
Error: Argument 1 must be a data frame or a named atomic vector.
但据我所知.x 是一个向量...
我希望能够制作的是这样的:
# A tibble: 5 x 5
n power sig.level test cohens_d
<dbl> <dbl> <dbl> <chr> <dbl>
1 10000 0.8 0.05 two-sided 0.0229
2 15000 0.8 0.05 two-sided 0.0323
3 20000 0.8 0.05 two-sided 0.0280
4 25000 0.8 0.05 two-sided 0.0251
5 30000 0.8 0.05 two-sided 0.0229
理想情况下,函数的选项可以添加另一列,将 cohen 的 d 转换为我关心的变量的单位(即通过 SD)。
【问题讨论】:
-
这是从
pwr.t.test返回的delta。我想做的是取该值并将其乘以用户指定的输入sd以返回另一列名为mdes