# glmTreat

##### Test for Differential Expression Relative to a Threshold

Conduct genewise statistical tests for a given coefficient or contrast relative to a specified fold-change threshold.

##### Usage

```
glmTreat(glmfit, coef=ncol(glmfit$design), contrast=NULL, lfc=0)
treatDGE(glmfit, coef=ncol(glmfit$design), contrast=NULL, lfc=0)
```

##### Arguments

- glmfit
- a
`DGEGLM`

object, usually output from`glmFit`

or`glmQLFit`

. - coef
- integer or character vector indicating which coefficients of the linear model are to be tested equal to zero. Values must be columns or column names of
`design`

. Defaults to the last coefficient. Ignored if`contrast`

is specified. - contrast
- numeric vector specifying the contrast of the linear model coefficients to be tested against the log2-fold-change threshold. Length must equal to the number of columns of
`design`

. If specified, then takes precedence over`coef`

. - lfc
- numeric scalar specifying the absolute value of the log2-fold change threshold above which differential expression is to be considered.

##### Details

`glmTreat`

implements a test for differential expression relative to a minimum required fold-change threshold.
Instead of testing for genes which have log-fold-changes different from zero, it tests whether the log2-fold-change is greater than `lfc`

in absolute value.
`glmTreat`

is analogous to the TREAT approach developed by McCarthy and Smyth (2009) for microarrays.

`glmTreat`

detects whether `glmfit`

was produced by `glmFit`

or `glmQLFit`

.
In the former case, it conducts a modified likelihood ratio test (LRT) against the fold-change threshold.
In the latter case, it conducts a quasi-likelihood (QL) F-test against the threshold.

If `lfc=0`

, then `glmTreat`

is equivalent to `glmLRT`

or `glmQLFTest`

, depending on whether likelihood or quasi-likelihood is being used.

If there is no shrinkage on log-fold-changes, i.e., fitting glms with `prior.count=0`

, then `unshrunk.logFC`

and `logFC`

are essentially the same. Hence they are merged into one column of `logFC`

in `table`

.
Note that `glmTreat`

constructs test statistics using `unshrunk.logFC`

rather than `logFC`

.

`glmTreat`

was previously called `treatDGE`

.
The old function name is now deprecated and will be removed in a future release of edgeR.

##### Value

- lfc
- absolute value of the specified log2-fold-change threshold.
- table
- data frame with the same rows as
`glmfit`

containing the log2-fold-changes, average log2-counts per million and p-values, ready to be displayed by`topTags`

. - comparison
- character string describing the coefficient or the contrast being tested. The data frame
- logFC
- shrunk log2-fold-change of expression between conditions being tested.
- unshrunk.logFC
- unshrunk log2-fold-change of expression between conditions being tested. Exists only when
`prior.count`

is not equal to 0 for`glmfit`

. - logCPM
- average log2-counts per million, the average taken over all libraries.
- PValue
- p-values.

`glmTreat`

produces an object of class `DGELRT`

with the same components as for `glmfit`

plus the following:
`table`

contains the following columns:
##### References

McCarthy, D. J., and Smyth, G. K. (2009).
Testing significance relative to a fold-change threshold is a TREAT.
*Bioinformatics* 25, 765-771.
http://bioinformatics.oxfordjournals.org/content/25/6/765

##### See Also

`topTags`

displays results from `glmTreat`

.

##### Examples

```
ngenes <- 100
n1 <- 3
n2 <- 3
nlibs <- n1+n2
mu <- 100
phi <- 0.1
group <- c(rep(1,n1), rep(2,n2))
design <- model.matrix(~as.factor(group))
### 4-fold change for the first 5 genes
i <- 1:5
fc <- 4
mu <- matrix(mu, ngenes, nlibs)
mu[i, 1:n1] <- mu[i, 1:n1]*fc
counts <- matrix(rnbinom(ngenes*nlibs, mu=mu, size=1/phi), ngenes, nlibs)
d <- DGEList(counts=counts,lib.size=rep(1e6, nlibs), group=group)
gfit <- glmFit(d, design, dispersion=phi)
tr <- glmTreat(gfit, coef=2, lfc=1)
topTags(tr)
```

*Documentation reproduced from package edgeR, version 3.14.0, License: GPL (>=2)*