Power analysis for a paired-sample t-test is the same as for the one-sample t-test. This is due to the fact that in the paired-sample t-test we compute the difference in the two scores for each subject and then compute the mean and standard deviation of the differences. This turns the paired-sample t-test into a one-sample t-test.
set.seed(312)
n <- 10 # sample size
sdd <- 0.3088401 # sd of differences
sd <- sdd/sqrt(2) # sd
delta <- 0.5 # effect of interest
n1 <- n
n2 <- n # EoB manipulated for same size in both grps
mu1 <- 0
mu2 <- delta
#sd1 <- sd2 <- sdd
sd1 <- sd2 <- sdd/sqrt(2) # EOB added this for paired!
alpha <- 0.05
#dfGP <- n1+n2 - 2 # degrees of freedom
dfGP <- (n - 1) * 1 # EOB added this for paired!
cvGP <- qt(1-alpha/2, dfGP) # crit. value 2-sided test (under the null)
muDiff <- mu2-mu1 # true difference in means
sigDiff <- sqrt((sd1^2/n1) + (sd2^2/n2)) # true SD for difference in empirical means
ncp <- muDiff / sigDiff # noncentrality parameter (under alternative)
1-pt(cvGP, dfGP, ncp) # power
[1] 0.9947832
power.t.test(delta=delta , sd=sdd, n=n, type="one.sample")
One-sample t test power calculation
n = 10
delta = 0.5
sd = 0.3088401
sig.level = 0.05
power = 0.9947832
alternative = two.sided
power.t.test(delta=delta , sd=sdd, n=n, type="paired")
Paired t test power calculation
n = 10
delta = 0.5
sd = 0.3088401
sig.level = 0.05
power = 0.9947832
alternative = two.sided
NOTE: n is number of *pairs*, sd is std.dev. of *differences* within pairs
mean(replicate(1000, t.test(x=rnorm(n, delta ,sdd))$p.value)<0.05)
[1] 0.995
pwr::pwr.t.test(d=(delta)/sdd, n=n , type="one.sample" )
One-sample t test power calculation
n = 10
d = 1.618961
sig.level = 0.05
power = 0.9947832
alternative = two.sided
pwr::pwr.t.test(d=(delta)/sdd, n=n , type="paired" )
Paired t test power calculation
n = 10
d = 1.618961
sig.level = 0.05
power = 0.9947832
alternative = two.sided
NOTE: n is number of *pairs*
(pow <- mean(replicate(10000, t.test(rnorm(n, delta, sdd))$p.value <= 0.05)) )
[1] 0.9959
power.t.test(delta=delta, sd=sdd , power=pow, type="paired")
Paired t test power calculation
n = 10.28521
delta = 0.5
sd = 0.3088401
sig.level = 0.05
power = 0.9959
alternative = two.sided
NOTE: n is number of *pairs*, sd is std.dev. of *differences* within pairs
power.t.test(delta=delta, sd=sdd , power=pow, type="one.sample")
One-sample t test power calculation
n = 10.28521
delta = 0.5
sd = 0.3088401
sig.level = 0.05
power = 0.9959
alternative = two.sided
n1 <- n
n2 <- n # EoB manipulated for same size in both grps
mu1 <- 0
mu2 <- delta
sd1 <- sd2 <- sd
#sd1 <- sd2 <- sdd/sqrt(2) # EOB added this for paired!
alpha <- 0.05
dfGP <- n1+n2 - 2 # degrees of freedom
#dfGP <- (n - 1) * 1 # EOB added this for paired!
cvGP <- qt(1-alpha/2, dfGP) # crit. value 2-sided test (under the null)
muDiff <- mu2-mu1 # true difference in means
sigDiff <- sqrt((sd1^2/n1) + (sd2^2/n2)) # true SD for difference in empirical means
ncp <- muDiff / sigDiff # noncentrality parameter (under alternative)
1-pt(cvGP, dfGP, ncp) # power
[1] 0.9979561
power.t.test(delta=delta , sd=sd , n=n, type="two.sample")
Two-sample t test power calculation
n = 10
delta = 0.5
sd = 0.2183829
sig.level = 0.05
power = 0.9979561
alternative = two.sided
NOTE: n is number in *each* group
pwr::pwr.t.test(d=(delta)/sd, n=n , type="two.sample" )
Two-sample t test power calculation
n = 10
d = 2.289556
sig.level = 0.05
power = 0.9979561
alternative = two.sided
NOTE: n is number in *each* group
R version 3.2.2 (2015-08-14)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 8 x64 (build 9200)
locale:
[1] LC_COLLATE=English_United Kingdom.1252 LC_CTYPE=English_United Kingdom.1252
[3] LC_MONETARY=English_United Kingdom.1252 LC_NUMERIC=C
[5] LC_TIME=English_United Kingdom.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] reshape_0.8.5 plyr_1.8.3 arm_1.8-6 lme4_1.1-12 Matrix_1.2-2 MASS_7.3-45 ggplot2_2.1.0 knitr_1.12.3
loaded via a namespace (and not attached):
[1] Rcpp_0.12.4 magrittr_1.5 splines_3.2.2 munsell_0.4.3 colorspace_1.2-6 lattice_0.20-33
[7] minqa_1.2.4 pwr_1.1-3 stringr_1.0.0 tools_3.2.2 grid_3.2.2 gtable_0.2.0
[13] nlme_3.1-127 coda_0.18-1 htmltools_0.3.5 abind_1.4-3 yaml_2.1.13 digest_0.6.9
[19] nloptr_1.0.4 formatR_1.3 evaluate_0.9 rmarkdown_0.9.6 stringi_1.0-1 scales_0.4.0
[1] "~/X/CUSTOMER"
This took 6.24 seconds to execute.