Holm–Bonferroni method

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

In statistics, the Holm–Bonferroni method,[1] also called the Holm method or Bonferroni–Holm method, is used to counteract the problem of multiple comparisons. It is intended to control the family-wise error rate and offers a simple test uniformly more powerful than the Bonferroni correction. It is named after Sture Holm, who codified the method, and Carlo Emilio Bonferroni.


When considering several hypotheses, the problem of multiplicity arises: the more hypotheses are checked, the higher the probability of obtaining Type I errors (false positives). The Holm–Bonferroni method is one of many approaches for controlling the family-wise error rate (probability that one or more Type I errors will occur) by adjusting the rejection criteria for each of the individual hypotheses.[citation needed]


The method is as follows:

  • Suppose you have p-values, sorted into order lowest-to-highest , and their corresponding hypotheses (null hypothesis). You want the familywise error rate to be no higher than a certain prespecified significance level .
  • Is ? If so, reject and continue to the next step, otherwise EXIT.
  • Is ? If so, reject also, and continue to the next step, otherwise EXIT.
  • And so on: for each P value, test whether . If so, reject and continue to examine the larger P values, otherwise EXIT.

This method ensures that the family-wise error rate.


The simple Bonferroni correction rejects only null hypotheses with p-value less than , in order to ensure that the risk of rejecting one or more true null hypotheses (i.e., of committing one or more type I errors) is at most . The cost of this protection against type I errors is an increased risk of failing to reject one or more false null hypotheses (i.e., of committing one or more type II errors).

The Holm–Bonferroni method also controls the maximum family-wise error rate at , but with a lower increase of type II error risk than the classical Bonferroni method. The Holm–Bonferroni method sorts the p-values from lowest to highest and compares them to nominal alpha levels of to (respectively), namely the values .

  • The index identifies the first p-value that is not low enough to validate rejection. Therefore, the null hypotheses are rejected, while the null hypotheses are not rejected.
  • If then no p-values were low enough for rejection, therefore no null hypotheses are rejected.
  • If no such index could be found then all p-values were low enough for rejection, therefore all null hypotheses are rejected (none are accepted).


Holm–Bonferroni controls the FWER as follows. Let be a family of hypotheses, and be the sorted p-values. Let be the set of indices corresponding to the (unknown) true null hypotheses, having members.

Let us assume that we wrongly reject a true hypothesis. We have to prove that the probability of this event is at most . Let be the first rejected true hypothesis (first in the ordering given by the Bonferroni–Holm test). Then are all rejected false hypotheses and . From there, we get (1). Since is rejected we have by definition of the test. Using (1), the right hand side is at most . Thus, if we wrongly reject a true hypothesis, there has to be a true hypothesis with P-value at most .

So let us define the random variable . Whatever the (unknown) set of true hypotheses is, we have (by the Bonferroni inequalities). Therefore, the probability to reject a true hypothesis is at most .

Alternative proof[edit]

The Holm–Bonferroni method can be viewed as closed testing procedure,[2] with Bonferroni method applied locally on each of the intersections of null hypotheses. As such, it controls the family-wise error rate for all the k hypotheses at level α in the strong sense. Each intersection is tested using the simple Bonferroni test.

It is a shortcut procedure since practically the number of comparisons to be made equal to or less, while the number of all intersections of null hypotheses to be tested is of order .

The closure principle states that a hypothesis in a family of hypotheses is rejected – while controlling the family-wise error rate of – if and only if all the sub-families of the intersections with are controlled at level of family-wise error rate of .

In Holm–Bonferroni procedure, we first test . If it is not rejected then the intersection of all null hypotheses is not rejected too, such that there exist at least one intersection hypothesis for each of elementary hypotheses that is not rejected, thus we reject none of the elementary hypotheses.

If is rejected at level then all the intersection sub-families that contain it are rejected too, thus is rejected. This is because is the smallest in each one of the intersection sub-families and the size of the sub-families is the most , such that the Bonferroni threshold larger than .

The same rationale applies for . However, since already rejected, it sufficient to reject all the intersection sub-families of without . Once holds all the intersections that contains are rejected.

The same applies for each .


Consider four null hypotheses with unadjusted p-values , , and , to be tested at significance level . Since the procedure is step-down, we first test , which has the smallest p-value . The p-value is compared to , the null hypothesis is rejected and we continue to the next one. Since we reject as well and continue. The next hypothesis is not rejected since . We stop testing and conclude that and are rejected and and are not rejected while controlling the family-wise error rate at level . Note that even though applies, is not rejected. This is because the testing procedure stops once a failure to reject occurs.


Holm–Šidák method[edit]

When the hypothesis tests are not negatively dependent, it is possible to replace with:

resulting in a slightly more powerful test.

Weighted version[edit]

Let be the ordered unadjusted p-values. Let , correspond to . Reject as long as

Adjusted p-values[edit]

The adjusted p-values for Holm–Bonferroni method are:

In the earlier example, the adjusted p-values are , , and . Only hypotheses and are rejected at level .

Similar adjusted p-values for Holm-Šidák method can be defined recursively as , where . Due to the inequality for , the Holm-Šidák method will be more powerful than Holm-Bonferroni method.

The weighted adjusted p-values are:[citation needed]

A hypothesis is rejected at level α if and only if its adjusted p-value is less than α. In the earlier example using equal weights, the adjusted p-values are 0.03, 0.06, 0.06, and 0.02. This is another way to see that using α = 0.05, only hypotheses one and four are rejected by this procedure.

Alternatives and usage[edit]

The Holm–Bonferroni method is "uniformly" more powerful than the classic Bonferroni correction, meaning that it is always at least as powerful.

There are other methods for controlling the family-wise error rate that are more powerful than Holm–Bonferroni. For instance, in the Hochberg procedure, rejection of is made after finding the maximal index such that . Thus, The Hochberg procedure is uniformly more powerful than the Holm procedure. However, the Hochberg procedure requires the hypotheses to be independent or under certain forms of positive dependence, whereas Holm–Bonferroni can be applied without such assumptions. A similar step-up procedure is the Hommel procedure, which is uniformly more powerful than the Hochberg procedure.[3]


Carlo Emilio Bonferroni did not take part in inventing the method described here. Holm originally called the method the "sequentially rejective Bonferroni test", and it became known as Holm–Bonferroni only after some time. Holm's motives for naming his method after Bonferroni are explained in the original paper: "The use of the Boole inequality within multiple inference theory is usually called the Bonferroni technique, and for this reason we will call our test the sequentially rejective Bonferroni test."


  1. ^ Holm, S. (1979). "A simple sequentially rejective multiple test procedure". Scandinavian Journal of Statistics. 6 (2): 65–70. JSTOR 4615733. MR 0538597.
  2. ^ Marcus, R.; Peritz, E.; Gabriel, K. R. (1976). "On closed testing procedures with special reference to ordered analysis of variance". Biometrika. 63 (3): 655–660. doi:10.1093/biomet/63.3.655.
  3. ^ Hommel, G. (1988). "A stagewise rejective multiple test procedure based on a modified Bonferroni test". Biometrika. 75 (2): 383–386. doi:10.1093/biomet/75.2.383. hdl:2027.42/149272. ISSN 0006-3444.