Let say I've two independant groups where I have these informations :
nA <- 20
mA <- 10 # mean
sdA <- 4
nB <- 30
mB <- 15 # mean
sdB <- 6
I want to compute sample size for a new study (power=0.9, alpha=0.05). I used pwr R package as follow :
dd <- data.frame(n=c(nA,nB),mean=c(mA,mB),sd=c(sdA,sdB))
dd$df <- dd$n-1
pooledSD <- sqrt( sum(dd$sd^2 * dd$df) / sum(dd$df) )
delta <- mB-mA
d <- delta/pooledSD
pwr.t.test(d=d, sig.level=0.05, power = 0.9, type = 'two.sample')
resulting in :
Two-sample t test power calculation
n = 24.60794
d = 0.9435082
sig.level = 0.05
power = 0.9
alternative = two.sided
NOTE: n is number in *each* group
Is that correct to use the pooled SD in the calculation of d or should I use the sd of the mean differences i.e. delta.sd <- sqrt( (sdB^2/nB) + (sdA^2/nA))
Thanks
EDIT after @COOLSerdash comment
Following @COOLSerdash advice I used power.welch.t.test from MKmisc package
power.welch.t.test(delta = delta,sd1 = sdB,sd2=sdA,sig.level = 0.05,power = 0.9)
Two-sample Welch t test power calculation
n = 23.00816
delta = 5
sd1 = 6
sd2 = 4
sig.level = 0.05
power = 0.9
alternative = two.sided
NOTE: n is number in *each* group
R. With $n=23$ in each group, my simulations confirm a power of about 90%. – COOLSerdash Jan 15 '20 at 10:08