backgroundCorrect {limma} | R Documentation

## Correct Intensities for Background

### Description

Background correct microarray expression intensities.

### Usage

    backgroundCorrect(RG, method="subtract", offset=0, printer=RG$printer, verbose=TRUE)

### Arguments

`RG` | an `RGList` object or a unclassed list containing the same components as an `RGList`
`method` | character string specifying correction method. Possible values are `"none"`, `"subtract"`, `"half"`, `"minimum"`, `"movingmin"`, `"edwards"`, `"normexp"` or `"rma"`.
`offset` | numeric value to add to intensities
`printer` | a list containing printer layout information, see `PrintLayout-class`
`verbose` | logical, should progress be reported to standard output

### Details

If `method="none"` then the corrected intensities are equal to the foreground intensities, i.e., the background intensities are treated as zero. If `method="subtract"` then this function simply subtracts the background intensities from the foreground intensities which is the usual background correction method. If `method="movingmin"` then the background estimates are replaced with the minimums of the backgrounds of the spot and its eight neighbors, i.e., the background is replaced by a moving minimum of 3x3 grids of spots.

The remaining methods are all designed to produce positive corrected intensities. If `method="half"` then any intensity which is less than 0.5 after background subtraction is reset to be equal to 0.5. If `method="minimum"` then any intensity which is zero or negative after background subtraction is set equal to half the minimum of the positive corrected intensities for that array. If `method="edwards"` a log-linear interpolation method is used to adjust lower intensities as in Edwards (2003). If `method="normexp"` a convolution of normal and exponential distributions is fitted to the foreground intensities using the background intensities as a covariate, and the expected signal given the observed foreground becomes the corrected intensity. This results in a smooth monotonic transformation of the background subtracted intensities such that all the corrected intensities are positive. See Smyth (2005) and `normexp.fit` for more details.

The `offset` can be used to add a constant to the intensities before log-transforming, so that the log-ratios are shrunk towards zero at the lower intensities. This may eliminate or reverse the usual 'fanning' of log-ratios at low intensities associated with local background subtraction.

Background correction (background subtraction) is also performed by the `normalizeWithinArrays` method for `RGList` objects, so it is not necessary to call `backgroundCorrect` directly unless one wants to use a method other than simple subtraction. Calling `backgroundCorrect` before `normalizeWithinArrays` will over-ride the default background correction.

### Value

An `RGList` object in which components `R` and `G` are background corrected and components `Rb` and `Gb` are removed.

### Author(s)

Gordon Smyth

### References

Edwards, D. E. (2003). Non-linear normalization and background correction in one-channel cDNA microarray studies Bioinformatics 19, 825-833.

Smyth, G. K. (2005). Limma: linear models for microarray data. In: Bioinformatics and Computational Biology Solutions using R and Bioconductor, R. Gentleman, V. Carey, S. Dudoit, R. Irizarry, W. Huber (eds.), Springer, New York, pages 397-420.

Yang, Y. H., Buckley, M. J., Dudoit, S., and Speed, T. P. (2002). Comparison of methods for image analysis on cDNA microarray data. Journal of Computational and Graphical Statistics 11, 108-136.

Yang, Y. H., Buckley, M. J., and Speed, T. P. (2001). Analysis of microarray images. Briefings in Bioinformatics 2, 341-349.

### See Also

An overview of background correction functions is given in `04.Background`.

### Examples

    RG <- new("RGList", list(R=c(1,2,3,4),G=c(1,2,3,4),Rb=c(2,2,2,2),Gb=c(2,2,2,2)))
    backgroundCorrect(RG)
    backgroundCorrect(RG, method="half")
    backgroundCorrect(RG, method="minimum")
    backgroundCorrect(RG, offset=5)

[Package limma version 2.10.5 Index]