marray (version 1.50.0)

maNormMain: Main function for location and scale normalization of cDNA microarray data

Description

This is the main function for location and scale normalization of cDNA microarray data. Normalization is performed for a batch of arrays using location and scale normalization procedures specified by the lists of functions f.loc and f.scale. Typically, only one function is given in each list, otherwise composite normalization is performed using the weights computed by the functions a.loc and a.scale. The function operates on an object of class "marrayRaw" (or possibly "marrayNorm", if normalization is performed in several steps) and returns an object of class "marrayNorm". Simple wrapper functions are provided by maNorm and maNormScale.

Usage

maNormMain(mbatch, f.loc=list(maNormLoess()), f.scale=NULL, a.loc=maCompNormEq(), a.scale=maCompNormEq(), Mloc=TRUE, Mscale=TRUE, echo=FALSE)

Arguments

mbatch
An object of class "marrayRaw", containing intensity data for the batch of arrays to be normalized. An object of class "marrayNorm" may also be passed if normalization is performed in several steps.
f.loc
A list of location normalization functions, e.g., maNormLoess, maNormMed, or maNorm2D.
f.scale
A list of scale normalization functions, .e.g, maNormMAD.
a.loc
For composite normalization, a function for computing the weights used in combining several location normalization functions, e.g., maCompNormA.
a.scale
For composite normalization, a function for computing the weights used in combining several scale normalization functions.
Mloc
If TRUE, the location normalization values are stored in the slot maMloc of the object of class "marrayNorm" returned by the function, if FALSE, these values are not retained.
Mscale
If TRUE, the scale normalization values are stored in the slot maMscale of the object of class "marrayNorm" returned by the function, if FALSE, these values are not retained.
echo
If TRUE, the index of the array currently being normalized is printed.

Value

mnorm
An object of class "marrayNorm", containing the normalized intensity data.

Details

When both location and scale normalization functions (f.loc and f.scale) are passed, location normalization is performed before scale normalization. That is, scale values are computed for the location normalized log-rations. The same results could be obtained by two applications of the function maNormMain, first with only the location normalization function and f.scale=NULL, and second with only the scale normalization function and f.loc=NULL.

References

S. Dudoit and Y. H. Yang. (2002). Bioconductor R packages for exploratory analysis and normalization of cDNA microarray data. In G. Parmigiani, E. S. Garrett, R. A. Irizarry and S. L. Zeger, editors, The Analysis of Gene Expression Data: Methods and Software, Springer, New York.

Y. H. Yang, S. Dudoit, P. Luu, and T. P. Speed (2001). Normalization for cDNA microarray data. In M. L. Bittner, Y. Chen, A. N. Dorsel, and E. R. Dougherty (eds), Microarrays: Optical Technologies and Informatics, Vol. 4266 of Proceedings of SPIE.

Y. H. Yang, S. Dudoit, P. Luu, D. M. Lin, V. Peng, J. Ngai, and T. P. Speed (2002). Normalization for cDNA microarray data: a robust composite method addressing single and multiple slide systematic variation. Nucleic Acids Research, Vol. 30, No. 4.

See Also

maNorm, maNormScale, maNormLoess, maLoess, maNormMAD, maMAD, maNormMed, maMed, maNorm2D, ma2D, maCompNormA, maCompNormEq.

Examples

Run this code
# Examples use swirl dataset, for description type ? swirl
data(swirl)

# Within-print-tip-group loess location normalization of batch swirl
# - Default normalization
swirl.norm<-maNormMain(swirl)

boxplot(swirl.norm)
boxplot(swirl.norm[,3])
plot(swirl.norm[,3])

# Global median normalization for arrays 81 and 82
swirl.norm <- maNormMain(swirl[,1:2], f.loc = list(maNormMed(x=NULL,y="maM")))

# Global loess normalization for array 81
swirl.norm <- maNormMain(swirl[,1], f.loc = list(maNormLoess(x="maA",y="maM",z=NULL)))

# Composite normalization as in Yang et al. (2002)
# No MSP controls are available here, so all spots are used for illustration
# purposes
swirl.norm <- maNormMain(swirl[,1], f.loc = list(maNormLoess(x="maA",y="maM",z=NULL),maNormLoess(x="maA",y="maM",z="maPrintTip")), a.loc=maCompNormA())

Run the code above in your browser using DataCamp Workspace