# NOT RUN {
# Define function to generate data from N(mu, sigsq) and perform t-test.
f <- function(n = 100, mu = 0, sigsq = 1, alpha = 0.05) {
x <- rnorm(n = n, mean = mu, sd = sqrt(sigsq))
fit <- t.test(x = x, alpha = alpha)
return(list(t = fit$statistic, p = fit$p.value))
}
# Call f once for various sample sizes and means
f %>% iterate(n = c(100, 500), mu = c(0.1, 0.25))
# Run 100 trials for each scenario and calculate empirical power
f %>% iterate(n = c(100, 500), mu = c(0.1, 0.25), trials = 100) %>%
group_by(n, mu) %>%
summarise(mean(p < 0.05))
# }
Run the code above in your browser using DataLab