maNormMain {marray} | R Documentation

## 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.

### 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`.

### Value

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

### Author(s)

Sandrine Dudoit, http://www.stat.berkeley.edu/~sandrine.

### 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

    # 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())

[Package marray version 1.8.0 Index]