normalizeArrays {PAA} | R Documentation

## Normalize microarray data.

### Description

Normalizes `EListRaw` data and returns an `EList` object containing normalized data in log2 scale.

### Usage

    normalizeArrays(elist = NULL, method = "quantile", cyclicloess.method = "pairs",
    controls="internal", group1 = NULL, group2 = NULL, output.path=NULL)

### Arguments

`elist` | `EListRaw` object containing raw data to be normalized (mandatory).
`method` | string indicating the normalization method (`"cyclicloess"`, `"quantile"`, `"vsn"` or `"rlm"`) to be used (mandatory).
`cyclicloess.method` | string indicating which type of cyclicloess normalization (`"pairs"`, `"fast"`, `"affy"`) should be performed (optional).
`controls` | sring indicating the ProtoArray controls for `rlm` normalization (optional). Valid options are `"internal"` (default), `"external"`, `"both"` or a regular expression defining a specific control or a specific set of controls.
`group1` | vector of integers (column indices) indicating all group 1 samples (optional).
`group2` | vector of integers (column indices) indicating all group 2 samples (optional).
`output.path` | output.path for ProtoArray rlm normalization (optional).

### Details

This function is partially a wrapper to `limma`'s function `normalizeBetweenArrays()` for inter-array normalization featuring optional groupwise normalization when the arguments `group1` AND `group2` are assigned. For more information on `"cyclicloess"`, `"quantile"` or `"vsn"` see the documentation of the `limma` package. Furthermore, for ProtoArrays robust linear normalization (`"rlm"`, see Sboner A. et al.) is provided.

For `rlm` normalization (`method = "rlm"`) the additional argument `controls` needs to be specified in order to select a set of controls used for normalization. Valid options are `"internal"` (default), `"external"` and `"both"` which refer to the following sets of ProtoArray controls:

- internal: The set of all internal controls spotted on the ProtoArray. The human-IgG series and anti-human-IgG series, which respond to serum and secondary antibodies.

- external: The V5-CMK1 series spotted on the ProtoArray which responds to exogenously added anti-V5 antibody (external control).

- both: The combined set of both the internal and the external controls (i.e., the human-IgG and anti-human-IgG series and the V5-CMK1 series).

Moreover, via `controls` a regular expression can be passed in order to select a more specific group of controls. Please check the column `"Name"` in your gpr files in order to obtain the complete list of names of all controls spotted on the ProtoArray. In the following some examples of valid regular expressions are given:

- `"^HumanIg"` Only human IgGs and IgAs are selected (esp., no anti-human Igs).

- `"Anti-HumanIgA"` Only anti-human-IgAs are selected (esp., no human IgGs and IgAs).

- `"(Anti-HumanIg|^V5control|BSA|ERa)"` Only anti-human IgGs and anti-human IgAs, the V5-CMK1 series, BSA and ERa are selected.

- `"HumanIgG"` Only human IgGs and anti-human IgGs are selected.

- `"V5control"` Only the V5-CMK1 series is selected.

### Value

An EList object with the normalized data in log2 scale is returned.

### Author(s)

Michael Turewicz, michael.turewicz@rub.de

### References

The package `limma` by Gordon Smyth et al. can be downloaded from Bioconductor (http://www.bioconductor.org/).

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.

Sboner A. et al., Robust-linear-model normalization to reduce technical variability in functional protein microarrays. J Proteome Res 2009, 8(12):5451-5464.

### Examples

    cwd <- system.file(package="PAA")
    load(paste(cwd, "/extdata/Alzheimer.RData", sep=""))
    elist <- elist[elist$genes$Block < 10,]
    normalized.elist <- normalizeArrays(elist=elist, method="quantile")

[Package PAA version 1.20.0 Index]