Usually data from spotted microarrays will be normalized using normalizeWithinArrays
.
A minority of data will also be normalized using normalizeBetweenArrays
if diagnostic plots suggest a difference in scale between the arrays.
In rare circumstances, data might be normalized using normalizeForPrintorder
before using normalizeWithinArrays
.
All the normalization routines take account of spot quality weights which might be set in the data objects.
The weights can be temporarily modified using modifyWeights
to, for example, remove ratio control spots from the normalization process.
If one is planning analysis of single-channel information from the microarrays rather than analysis of differential expression based on log-ratios, then the data should be normalized using a single channel-normalization technique.
Single channel normalization uses further options of the normalizeBetweenArrays
function.
For more details see the LIMMA User's Guide which includes a section on single-channel normalization.
normalizeWithinArrays
uses utility functions MA.RG
, loessFit
and normalizeRobustSpline
.
normalizeBetweenArrays
is the main normalization function for one-channel arrays,
as well as an optional function for two-colour arrays.
normalizeBetweenArrays
uses utility functions normalizeMedianAbsValues
, normalizeMedianAbsValues
, normalizeQuantiles
and normalizeCyclicLoess
, none of which need to be called directly by users.
neqc
is a between array normalization function customized for Illumina BeadChips.
The function normalizeVSN
is also provided as a interface to the vsn package.
It performs variance stabilizing normalization, an algorithm which includes background correction, within and between normalization together, and therefore doesn't fit into the paradigm of the other methods.
removeBatchEffect
can be used to remove a batch effect, associated with hybridization time or some other technical variable, prior to unsupervised analysis.