I'm working with some exploratory spatial analysis in R using spdep package.

I came across an option to adjust p-values of local indicators of spatial association (LISA) calculated using localmoran function. According to the docs it is aimed at:

... probability value adjustment for multiple tests.

Further in the docs of p.adjustSP I read that the options available are:

The adjustment methods include the Bonferroni correction ('"bonferroni"') in which the p-values are multiplied by the number of comparisons. Four less conservative corrections are also included by Holm (1979) ('"holm"'), Hochberg (1988) ('"hochberg"'), Hommel (1988) ('"hommel"') and Benjamini & Hochberg (1995) ('"fdr"'), respectively. A pass-through option ('"none"') is also included.

The first four methods are designed to give strong control of the family-wise error rate. There seems no reason to use the unmodified Bonferroni correction because it is dominated by Holm's method, which is also valid under arbitrary assumptions.

Hochberg's and Hommel's methods are valid when the hypothesis tests are independent or when they are non-negatively associated (Sarkar, 1998; Sarkar and Chang, 1997). Hommel's method is more powerful than Hochberg's, but the difference is usually small and the Hochberg p-values are faster to compute.

The "BH" (aka "fdr") and "BY" method of Benjamini, Hochberg, and Yekutieli control the false discovery rate, the expected proportion of false discoveries amongst the rejected hypotheses. The false discovery rate is a less stringent condition than the family-wise error rate, so these methods are more powerful than the others.

Couple of questions that appeared:

  1. In plain words - what is the purpose of this adjustment?
  2. Is it necessary to use such corrections?
  3. If yes - how to choose from available options?
  • 1
    $\begingroup$ I migrated this question because many very like it have been addressed here on CV. See what you can learn from a search, for instance. $\endgroup$
    – whuber
    Commented Jul 16, 2013 at 13:40
  • $\begingroup$ @whuber Good idea. I didn't think about CV, but that indeed seems to be a better home for it. Thanks. $\endgroup$
    – user22
    Commented Jul 16, 2013 at 13:57

1 Answer 1


briefly, the problem that you are facing is called multiple hypothesis testing. It arises when you are testing, as the name indicates, many hypothesis at the same time.

Let's say that you have a given probability of incorrectly rejecting the null hypothesis (false positive) for a test, say 5%. As you increase the number of datasets that you are testing (in this case, each of the sets where you apply the local Moran statistic), the probability of observing in any dataset a false positive will increase, independently from the fact that probability of observing a false positive for a single dataset is the same.

There are many possible "corrections", which are the ones that you found, to correct this problem; if you really need a local statistic, you cannot dodge it. Otherwise, you can use the global statistic as a single hypothesis.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.