boott               package: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

_D_e_s_c_r_i_p_t_i_o_n:

     See Efron and Tibshirani (1993) for details on this function.

_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 bootstrap
          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 argument, 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 <-
          function(x,nbootsd,theta,...)' where `nbootsd'  is a dummy
          argument that is not used. If `theta' is the mean, for
          example,  `sdmean <- function(x,nbootsd,theta,...)
          {sqrt(var(x)/length(x))}' . If `sdfun' is missing, 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 Tibshirani (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 stabilizing 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)

