I want to estimate number of participants required for an experiment. I will be conducting 28 correlation tests. I am seeking 80% power for an effect size of 0.15 and alpha of 0.05 (all two-tailed).
Given the number of tests, I want to apply a multiple test correction and still achieve the desired power.
Doing that for Bonferroni is straightforward enough, I believe: my adjusted p-value would be 0.05/28 = 0.0018. Using this p-value I can now estimate that for the desired paramters above; the sample size I need is 691 (calculated using GPower 3.1).
Now, because the Bonferroni adjustment is quite restrictive, I would prefer to use the Benjamini-Hochberg one, but I am unsure how to apply it. After looking through a few papers with complicated computations, I stumbled upon this R
package, pwrFDR
(see here), that simplifies the job.
I used the following specification for the main pwrFDR
function, attempting to get the sample size.
pwrFDR(effect.size=0.15, average.power=0.80, N.tests=28, r.1 = 10/28,alpha=0.05, FDP.control.method='BHFDR')
The suggest sample size from this is 959. Even if I use the highest (and unrealistic) possible r.1
(proportion of significant tests, if I understand correctly), say 27/28, I still get an estimated sample size of 755, which is higher the one calculated using the Bonferroni procedure.
Given that the Bonferroni method has been shown to have significantly lower power than the Benjamini-Hochberg correction, why do the above estimates show that I need fewer participants with the Bonferroni correction? I think it's likely that I am misunderstanding the pwrFDR
function specifically, and power analysis using the BH procedure in general.