I use the pwr package based on Cohen 1988 paper on Power Analysis. Precicely, I use the function for general linear models pwr.f2.test() that takes 5 parameters:
Having any 4 out of 5 parameters filled in, the function returns the fifth one. So we need to have v being NULL and understand the values of the other parameters
For u we need to know the number of predictors. Our most extensive model with the interaction of density and homogeneity effects has the following predictors:
IVs:
Controls:
Based on this, u(DF numerator) = u = 8-1 = 7
Cohen (1988) suggests F2 values of 0.02, 0.15, and 0.35 represent small, medium, and large effect sizes for general linear models. I will take those values for now, probably, we should rely on the effect sizes from the previous studies for convincing argumentation
I will try most commonly used 0.05, 0.01, and 0.001
I take 0.8 since this value is the most often recomended one
Calculations:
#library
library(pwr)
#we need to find v to understand the sample size
#small effect size (f2 = 0.02) and p = 0.05
pwr.f2.test(u = 7, v = NULL, f2 = 0.02, sig.level = 0.05, power = 0.8)
#n of observations = u + p = 717 + 8 = 725
#small effect size (f2 = 0.02) and p = 0.01
pwr.f2.test(u = 7, v = NULL, f2 = 0.02, sig.level = 0.01, power = 0.8)
#n of observations = u + p = 991 + 8 = 999
#small effect size (f2 = 0.02) and p = 0.001
pwr.f2.test(u = 7, v = NULL, f2 = 0.02, sig.level = 0.001, power = 0.8)
#n of observations = u + p = 1344 + 8 = 1352
#medium effect size (f2 = 0.15) and p = 0.05
pwr.f2.test(u = 7, v = NULL, f2 = 0.15, sig.level = 0.05, power = 0.8)
#n of ovservations = u + p = 95 + 8 = 103
#medium effect size (f2 = 0.15) and p = 0.01
pwr.f2.test(u = 7, v = NULL, f2 = 0.15, sig.level = 0.01, power = 0.8)
#n of ovservations = u + p = 133 + 8 = 141
#medium effect size (f2 = 0.15) and p = 0.01
pwr.f2.test(u = 7, v = NULL, f2 = 0.15, sig.level = 0.01, power = 0.8)
#n of ovservations = u + p = 183 + 8 = 191
#large effect size (f2 = 0.35) and p = 0.05
pwr.f2.test(u = 7, v = NULL, f2 = 0.35, sig.level = 0.05, power = 0.8)
#n of ovservations = u + p = 41 + 8 = 49
#large effect size (f2 = 0.35) and p = 0.01
pwr.f2.test(u = 7, v = NULL, f2 = 0.35, sig.level = 0.01, power = 0.8)
#n of ovservations = u + p = 58 + 8 = 66
#large effect size (f2 = 0.35) and p = 0.001
pwr.f2.test(u = 7, v = NULL, f2 = 0.35, sig.level = 0.001, power = 0.8)
#n of ovservations = u + p = 81 + 8 = 89