# How to choose bootstrap confidence interval type from boot.ci in R?

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?

• 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/10.1.1.133.8405.pdf – Sal Mangiafico Jul 20 '17 at 22:49
• 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. – Michael R. Chernick Jul 20 '17 at 23:08
• @MichaelChernick I meant that boot.ci will return. Clarified in the question. – dfrankow Jul 23 '17 at 14:37
• So the procedure will give you only those 5 choices. But percentile method is ambiguous. Is it Efron's or Hall's percentile method? – Michael R. Chernick Jul 23 '17 at 15:16
• 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. – Sal Mangiafico Jul 23 '17 at 22:47

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.