<p>More context from the docs, looking at the arguments to <code>decideTests()</code>:</p>
<blockquote>
<p>method: character string specifying how genes and contrasts are to be combined in the
multiple testing scheme. Choices are &quot;separate&quot;, &quot;global&quot;, &quot;hierarchical&quot;
or &quot;nestedF&quot;.</p>
</blockquote>
<blockquote>
<p>adjust.method: character string specifying p-value adjustment method. Possible values are &quot;none&quot;,
&quot;BH&quot;, &quot;fdr&quot; (equivalent to &quot;BH&quot;), &quot;BY&quot; and &quot;holm&quot;. See p.adjust for details.</p>
</blockquote>
<p>These are two different options.</p>
<p>One option (<code>adjust.method</code>) chooses the multiple test correction, for which the default is BH/FDR.</p>
<p>The other option (<code>method</code>) decides how the multiple test correction is applied, for example can it be applied separately to different genes or across contrasts. <code>method = global</code> in this context just means that every single test statistic is considered at the same time. An alternative to this would be to consider a nested design.</p>
<p>More intuitively, <code>method = separate</code> applies the correction to each column of your matrix independently, such that in a <span class="math-container">$m x n$</span> matrix of statistics, the &quot;number of tests&quot; is <span class="math-container">$m*n$</span> for <code>global</code> and <span class="math-container">$m$</span> for <code>separate</code>.</p>
<p>For understanding the effect of the number of tests on FDR, I suggest consulting the <a href="https://en.wikipedia.org/wiki/False_discovery_rate" rel="nofollow noreferrer">FDR wiki page</a>. Basically, using a <code>method</code> other than <code>global</code> will increase power.</p>

CC BY-SA 4.0
2021-08-14T17:23:49.863Z
What do `m` and `n` correspond to here?
An Ignorant Wanderer
CC BY-SA 4.0
2021-08-14T18:59:49.627Z
`m` would be number of rows of the test statistic matrix, `n` number of columns. So the total number of test stats in a single column is `m`, the total number of test stats in the full matrix is $m * n$. Columns of matrix correspond to slices of the analysis as defined by limma, IIRC. So you can choose to correct every possible test at once, or you can correct by slice of the analysis.
Maximilian Press
CC BY-SA 4.0
2021-08-12T19:05:30.987Z
2021-08-12T19:05:30.987Z
Maximilian Press
<p>What kind of multiple hypothesis testing correction does <code>method=&quot;global&quot;</code> do in Limma's <code>decideTests</code> function? According to the <a href="https://bioconductor.org/packages/release/bioc/manuals/limma/man/limma.pdf" rel="nofollow noreferrer">documentation</a>:</p>
<blockquote>
<p>method=&quot;global&quot; will treat the entire matrix of t-statistics as a
single vector of unrelated tests.</p>
</blockquote>
<p>and</p>
<blockquote>
<p>method=&quot;global&quot; is useful when it is important that the same
t-statistic cutoff should correspond to statistical significance for
all the contrasts.</p>
</blockquote>
<p>What does this really mean? Does it use a Bonferroni correction?</p>

<rna-seq><limma>
Limma decideTests function: what kind of multiple hypothesis testing correction does parameter "method" involve?
# Limma decideTests function: what kind of multiple hypothesis testing correction does parameter "method" involve?

(Asked by: username_0 on 2021-08-11)

What kind of multiple hypothesis testing correction does `method="global"` do in Limma's `decideTests` function? According to the [documentation](https://bioconductor.org/packages/release/bioc/manuals/limma/man/limma.pdf):

> method="global" will treat the entire matrix of t-statistics as a
> single vector of unrelated tests.

and

> method="global" is useful when it is important that the same
> t-statistic cutoff should correspond to statistical significance for
> all the contrasts.

What does this really mean? Does it use a Bonferroni correction?

**Tags:** rna-seq, limma

---

## 1 answers

### Answer by username_1 on 2021-08-12. Score: 2 | Accepted answer

More context from the docs, looking at the arguments to `decideTests()`:

> method: character string specifying how genes and contrasts are to be combined in the
> multiple testing scheme. Choices are "separate", "global", "hierarchical"
> or "nestedF".

> adjust.method: character string specifying p-value adjustment method. Possible values are "none",
> "BH", "fdr" (equivalent to "BH"), "BY" and "holm". See p.adjust for details.

These are two different options.

One option (`adjust.method`) chooses the multiple test correction, for which the default is BH/FDR.

The other option (`method`) decides how the multiple test correction is applied, for example can it be applied separately to different genes or across contrasts. `method = global` in this context just means that every single test statistic is considered at the same time. An alternative to this would be to consider a nested design.

More intuitively, `method = separate` applies the correction to each column of your matrix independently, such that in a $m x n$ matrix of statistics, the "number of tests" is $m\*n$ for `global` and $m$ for `separate`.

For understanding the effect of the number of tests on FDR, I suggest consulting the [FDR wiki page](https://en.wikipedia.org/wiki/False_discovery_rate). Basically, using a `method` other than `global` will increase power.

> **Comments:**
> **username_0**: What do `m` and `n` correspond to here?  
> **username_1**: `m` would be number of rows of the test statistic matrix, `n` number of columns. So the total number of test stats in a single column is `m`, the total number of test stats in the full matrix is $m * n$. Columns of matrix correspond to slices of the analysis as defined by limma, IIRC. So you can choose to correct every possible test at once, or you can correct by slice of the analysis.  

---

