makeContrasts: Construct Matrix of Custom Contrasts

Description Usage Arguments Details Value Author(s) See Also Examples

View source: R/modelmatrix.R

Description

Construct the contrast matrix corresponding to specified contrasts of a set of parameters.

Usage

1

Arguments

...

expressions, or character strings which can be parsed to expressions, specifying contrasts

contrasts

character vector specifying contrasts

levels

character vector or factor giving the names of the parameters of which contrasts are desired, or a design matrix or other object with the parameter names as column names.

Details

This function expresses contrasts between a set of parameters as a numeric matrix. The parameters are usually the coefficients from a linear model fit, so the matrix specifies which comparisons between the coefficients are to be extracted from the fit. The output from this function is usually used as input to contrasts.fit. The contrasts can be specified either as expressions using ... or as a character vector through contrasts. (Trying to specify contrasts both ways will cause an error.)

The parameter names must be syntactically valid variable names in R and so, for example, must begin with a letter rather than a numeral. See make.names for a complete specification of what is a valid name.

Value

Matrix which columns corresponding to contrasts.

Author(s)

Gordon Smyth

See Also

An overview of linear model functions in limma is given by the help page 06.LinearModels.

Examples

1
2
3
4
makeContrasts(B-A,C-B,C-A,levels=c("A","B","C"))
makeContrasts(contrasts="A-(B+C)/2",levels=c("A","B","C"))
x <- c("B-A","C-B","C-A")
makeContrasts(contrasts=x,levels=c("A","B","C"))

Example output

      Contrasts
Levels B - A C - B C - A
     A    -1     0    -1
     B     1    -1     0
     C     0     1     1
      Contrasts
Levels A-(B+C)/2
     A       1.0
     B      -0.5
     C      -0.5
      Contrasts
Levels B-A C-B C-A
     A  -1   0  -1
     B   1  -1   0
     C   0   1   1

limma documentation built on Nov. 8, 2020, 8:28 p.m.