

boott(bootstrap)                             R Documentation

_B_o_o_t_s_t_r_a_p_-_t _C_o_n_f_i_d_e_n_c_e _L_i_m_i_t_s

_U_s_a_g_e_:

     boott(x,theta, ..., sdfun=MISSING, nbootsd=25, nboott=200,
           VS=FALSE, v.nbootg=100, v.nbootsd=25, v.nboott=200,
           perc=c(.001,.01,.025,.05,.10,.50,.90,.95,.975,.99,.999))

_A_r_g_u_m_e_n_t_s_:

       x: a vector containing the data. Nonparametric boot-
          strap sampling is used. To bootstrap from more
          complex data structures (e.g.  bivariate data) see
          the last example below.

   theta: function to be bootstrapped. Takes `x' as an argu-
          ment, and may take additional arguments (see below
          and last example).

     ...: any additional arguments to be passed to `theta'

   sdfun: optional name of function for computing standard
          deviation of `theta' based on data `x'. Should be
          of the form: `sdmean <- func-
          tion(x,nbootsd,theta,...)' where `nbootsd' is a
          dummy argument that is not used. If `theta' is the
          mean, for example, `sdmean <- func-
          tion(x,nbootsd,theta,...)
          {sqrt(var(x)/length(x))}' .  If `sdfun' is miss-
          ing, then `boott' uses an inner bootstrap loop to
          estimate the standard deviation of `theta(x)'

 nbootsd: The number of bootstrap samples used to estimate
          the standard deviation of `theta(x)'

  nboott: The number of bootstrap samples used to estimate
          the distribution of the bootstrap T statistic.
          200 is a bare minimum and 1000 or more is needed
          for reliable  alpha % confidence points, alpha >
          .95 say.  Total number of bootstrap samples is
          `nboott*nbootsd'.

      VS: If `TRUE', a variance stabilizing transformation
          is estimated, and the interval is constructed on
          the transformed scale, and then is mapped back to
          the original theta scale.  This can improve both
          the statistical properties of the intervals and
          speed up the computation. See the reference Tib-
          shirani (1988) given below.  If `FALSE', variance
          stabilization is not performed.

v.nbootg: The number of bootstrap samples used to estimate
          the variance stabilizing transformation g.  Only
          used if `VS=TRUE'.

v.nbootsd: The number of bootstrap samples used to estimate
          the standard deviation of `theta(x)'.  Only used
          if `VS=TRUE'.

v.nboott: The number of bootstrap samples used to estimate
          the distribution of the bootstrap T statistic.
          Only used if `VS=TRUE'. Total number of bootstrap
          samples is `v.nbootg*v.nbootsd + v.nboott'.

    perc: Confidence points desired.

_V_a_l_u_e_:

     list with the following components:

confpoints: Estimated confidence points

theta, g: `theta' and `g' are only returned if `VS=TRUE' was
          specified. `(theta[i],g[i]),  i=1,length(theta)'
          represents the estimate of the variance stabiliz-
          ing transformation `g' at the points `theta[i]'.

_R_e_f_e_r_e_n_c_e_s_:

     Tibshirani, R. (1988) "Variance stabilization and the
     bootstrap". Biometrika (1988) vol 75 no 3 pages 433-44.

     Hall, P. (1988) Theoretical comparison of bootstrap
     confidence intervals. Ann. Statisi. 16, 1-50.

     Efron, B. and Tibshirani, R. (1993) An Introduction to
     the Bootstrap.  Chapman and Hall, New York, London.

_E_x_a_m_p_l_e_s_:

     #  estimated confidence points for the mean
     x <- rchisq(20,1)
     theta <- function(x){mean(x)}
     results <- boott(x,theta)
     # estimated confidence points for the mean,
     #  using variance-stabilization bootstrap-T method
     results <-  boott(x,theta,VS=T)
     results$confpoints          # gives confidence points
     # plot the estimated var stabilizing transformation
     plot(results$theta,results$g)
     # use standard formula for stand dev of mean
     # rather than an inner bootstrap loop
     sdmean <- function(x, ...)
         {sqrt(var(x)/length(x))}
     results <-  boott(x,theta,sdfun=sdmean)

     # To bootstrap functions of more  complex data structures,
     # write theta so that its argument x
     #  is the set of observation numbers
     #  and simply  pass as data to boot the vector 1,2,..n.
     # For example, to bootstrap
     # the correlation coefficient from a set of 15 data pairs:
     xdata <- matrix(rnorm(30),ncol=2)
     n <- 15
     theta <- function(x, xdata){ cor(xdata[x,1],xdata[x,2]) }
     results <- boott(1:n,theta, xdata)

