# 08.Tests: Topic: Hypothesis Testing for Linear Models

## Description

LIMMA provides a number of functions for multiple testing across both contrasts and genes.
The starting point is an `MArrayLM`

object, called `fit`

say, resulting from fitting a linear model and running `eBayes`

and, optionally, `contrasts.fit`

.
See 06.LinearModels or 07.SingleChannel for details.
## Multiple testing across genes and contrasts

The key function is `decideTests`

.
This function writes an object of class `TestResults`

, which is basically a matrix of `-1`

, `0`

or `1`

elements, of the same dimension as `fit$coefficients`

, indicating whether each coefficient is significantly different from zero.
A number of different multiple testing strategies are provided.
The function calls other functions `classifyTestsF`

, `classifyTestsP`

and `classifyTestsT`

which implement particular strategies.
The function `FStat`

provides an alternative interface to `classifyTestsF`

to extract only the overall moderated F-statistic. `selectModel`

chooses between linear models for each probe using AIC or BIC criteria.
This is an alternative to hypothesis testing and can choose between non-nested models. A number of other functions are provided to display the results of `decideTests`

.
The functions `heatDiagram`

(or the older version `heatdiagram`

displays the results in a heat-map style display.
This allows visual comparison of the results across many different conditions in the linear model. The functions `vennCounts`

and `vennDiagram`

provide Venn diagram style summaries of the results. Summary and `show`

method exists for objects of class `TestResults`

. The results from `decideTests`

can also be included when the results of a linear model fit are written to a file using `write.fit`

.## Gene Set Tests

Competitive gene set testing for an individual gene set is provided by `wilcoxGST`

or `geneSetTest`

, which permute genes.
The gene set can be displayed using `barcodeplot`

. Self-contained gene set testing for an individual set is provided by `roast`

, which uses rotation technology, analogous to permuting arrays. Gene set enrichment analysis for a large database of gene sets is provided by `romer`

.
`topRomer`

is used to rank results from `romer`

. The functions `alias2Symbol`

and `alias2SymbolTable`

are provided to help match gene sets with microarray probes by way of official gene symbols.## Global Tests

The function `genas`

can test for associations between two contrasts in a linear model. Given a set of p-values, the function `convest`

can be used to estimate the proportion of true null hypotheses. When evaluating test procedures with simulated or known results, the utility function `auROC`

can be used to compute the area under the Receiver Operating Curve for the test results for a given probe.## See Also

01.Introduction,
02.Classes,
03.ReadingData,
04.Background,
05.Normalization,
06.LinearModels,
07.SingleChannel,
08.Tests,
09.Diagnostics,
10.GeneSetTests,
11.RNAseq