The boot.ci documentation in R says there are five different types of confidence interval that boot.ci will return:

  • norm (normal approximation)
  • basic
  • stud (studentized)
  • perc (percentile)
  • bca (bias-corrected, accelerated)

BCa looked pretty good, but it seems really slow for my data.

How should I choose which one to use?

  • 3
    $\begingroup$ From what I've read, BCa and percentile are considered the technically superior. I have found percentile to be reasonably well behaved in difficult situations (e.g. small sample size or discontinuous data). The following article is helpful: tau.ac.il/~saharon/Boot/ $\endgroup$ Jul 20, 2017 at 22:49
  • $\begingroup$ There are actually more than 5. There is BC which does not include the use of an acceleration constant, two percentile methods (Efron's and Hall's) and iterated bootstrap. $\endgroup$ Jul 20, 2017 at 23:08
  • $\begingroup$ @MichaelChernick I meant that boot.ci will return. Clarified in the question. $\endgroup$
    – dfrankow
    Jul 23, 2017 at 14:37
  • $\begingroup$ So the procedure will give you only those 5 choices. But percentile method is ambiguous. Is it Efron's or Hall's percentile method? $\endgroup$ Jul 23, 2017 at 15:16
  • $\begingroup$ The documentation for boot.ci says, "The formulae on which the calculations are based can be found in Chapter 5 of Davison and Hinkley (1997)." Dunno if that's helpful. $\endgroup$ Jul 23, 2017 at 22:47

1 Answer 1


If your replicates are not normally distributed, do not choose $normal$.

$Basic$ can give you intervals that are out of the range of your replicated data; e.g. your bootstrapped replicates range between 2-200 but your lower confidence interval is -5.

For $student's$ CI, you need to pass a variance alongside whatever statistics (e.g. mean, median) you are dealing with. I would prefer this over $bca$ if you cannot generate a large number of replicates that can satisfy $bca$. If the number of replicates are small, the $bca$ intervals become unstable. One way of checking the stability is to generate many sets of replicates and identify corresponding confidence limits - most likely you will notice that the range of confidence limits based on $bca$ is wider than the rest.

I don't even know why they have the $percentile$ method, the most confusing of all five.

  • 1
    $\begingroup$ A cliched question: "If the number of replicates are small" -- how small is "small"? $\endgroup$
    – RTD
    Nov 13, 2020 at 13:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.