That may be possible in some cases, although you should not expect miracles.
The main reason to use a bootstrap for testing purposes (which is how I read your reference to "power") is usually to find an approximation to the null distribution of test statistics.
Here is a simple example. I generate data x
from (of course, that is something which is unknown in practice!) a N(3,1), where it is assumed (just for simplicity) that we know the variance is one.
x.star
generates, by sampling with replacement from x
, resamples, B
times in total. I.e., we then sample from a sample with mean xbar
. In order to get bootstrap test statistics that behave like standard normals - i.e., the behavior of the test statistic when the null is true - we therefore need to subtract the "bootstrap population mean" xbar
from each of the sample averages of the bootstrap samples mean(x.star)
. This is analogous to subtracting the mean under null, $\mu_0$ from $\bar x$ in the numerator of a standard non-bootstrap test statistic.
When you do that many, B
, times, we can use these bootstrap test statistics to build a bootstrap distribution that may serve as a null distribution against which to compare the realized test statistic:
library(boot)
n <- 5000
x <- rnorm(n, 3) # data
xbar <- mean(x) # mean
B <- 1e5 # number of bootstrap resamples
t.star <- rep(NA,B)
for (b in 1:B){
x.star <- sample(x, n, replace=T) # bootstrap data
t.star[b] <- sqrt(n)*(mean(x.star)-xbar) # bootstrap test statistic - by subtracting xbar, we make it behave like a N(0,1)
}
t <- abs(sqrt(n)*xbar) # test statistic for testing mu=0
bs.cv <- quantile(abs(t.star), .95) # bootstrap critical value. reject if abs(t) > bs.cv
bs.cv
qnorm(.975) # asymptotic c.v. For n,B large, bs.cv \approx bs.cv
> bs.cv
95%
1.936338
> qnorm(.975)
[1] 1.959964
Of course, in practice we would rather use such approaches where the usual asymptotic approximation may be untractable, e.g., due to nuisance parameters whose effect cannot (easily) be accounted for.
That said, there is much literature on bootstrap tests providing asymptotic refinements (e.g., here), i.e., faster convergence of the rejection rates to the nominal level. If the error-in-rejection probability of the underlying test using standard asymptotic critical values was such that it underrejected, a refinement will more completely exhaust the nominal rejection probability, and therefore, typically, also higher power, as a test that rejects more frequently when the null is true typically also does so when it is not.