Next: Appendix D: Up: Appendices Previous: Appendix B

Appendix C: The Bootstrap Method

Suppose a random sample x = (x1,x2,...xn) from an unknown probability distribution F has been observed and we wish to estimate a parameter of interest = t(F) on the basis of x. For this purpose, we calculate an estimate = s(x) from x. How accurate is ? The bootstrap1 was introduced in 1979 as a computer-based method for estimating the standard error of .

The bootstrap is a data-based simulation method for statistical inference. It allows scientists to explore data and draw valid statistical inferences without worrying about mathematical formulas and derivations. The bootstrap parameter estimate is available no matter how mathematically complicated the estimator = s(x) may be. In its non-parametric form, the bootstrap provides standard errors and confidence intervals without the usual normal-theory assumptions.

The bootstrap method draws repeated samples (with replacement) from the observed sample itself to generate the sampling distribution of a statistic (a data set of size n has 2n-1 nonempty subsets).

Bootstrapping of a statistic = s(x) consists of the following steps:

  1. B samples are drawn with replacement from the original data set x, with each sample the same size as the original data set. Call these bootstrap samples x*1,x*2,...x*B.
  2. The statistic of interest is computed for each bootstrap sample, that is (b) = s(x*b) for b = 1,2,...B.
The mean, standard deviation, and percentiles of these B values form the basis for the bootstrap approach to inference.

Implementation of these steps in a computer language is not difficult. A necessary ingredient for any bootstrap program is a high quality uniform number generator. It is important to keep in mind that the bootstrap (and associate methods) are not tools that are used in isolation but rather are applied to other statistical techniques. For this reason, they are most effectively used in an integrated environment for data analysis. In such an environment, a bootstrap procedure has the ability to call other procedures with different sets of inputs (data) and then collect them together and analyze the results. The S, S-PLUS2, Gauss, and Matlab packages are examples of integrated environment. In this report, we use the S-PLUS function summary.bootstrap( ). For each data-column, 1000 samples of the data (with replacement) or replicates were generated and the mean of these samples was calculated. The 2.5th and 97.5th empirical percentiles for the replicates of the parameter estimate (sample mean) are the lower and upper bounds of the data set, respectively.


1 The use of the term bootstrap derives from the phrase to pull oneself up by one's bootstrap. It is not the same as the term "bootstrap" used in computer science meaning to "boot" a computer from a set of core instructions, through the derivation is similar.

2 Commercial equipment, instruments, and materials mentioned in this report are identified to foster understanding. Such identification does not imply recommendation or endorsement by the National Institute of Standards and Technology (NIST), nor does it imply that the materials or equipment identified are necessarily the best available for the purpose.


Next: Appendix D: Up: Appendices Previous: Appendix B