normn MA {MDimNormn} | R Documentation |
Multi-dimensional MA normalization for plate effect
Description
Normalize data to minimize the difference among the subgroups of the samples generated by experimental factor such as multiple plates (batch effects)
- the primary method is Multi-MA, but other fitting function, f in manuscript (e.g. loess) is available, too.
This method is based on the assumptions stated below
The geometric mean value of the samples in each subgroup (or plate) for a single target is ideally same as those from the other subgroups.
The subgroup (or plate) effects that influence those mean values for multiple observed targets are dependent on the values themselves. (intensity dependent effects)
Usage
normn_MA(mD, expGroup, represent_FUN= function(x) mean(x, na.rm= T),
fitting_FUN= NULL, isLog= TRUE)
Arguments
mD |
a |
expGroup |
a |
represent_FUN |
a |
fitting_FUN |
|
isLog |
TRUE or FALSE, if the normalization should be conducted after log-transformation. The affinity proteomics data from suspension bead arrays is recommended to be normalized using the default, |
Value
The data after normalization in a matrix
Author(s)
Mun-Gwan Hong <mun-gwan.hong@scilifelab.se>
References
Hong M-G, Lee W, Pawitan Y, Schwenk JM (201?) Multi-dimensional normalization of plate effects for multiplexed applications unpublished
Examples
data(sba)
B <- normn_MA(sba$X, sba$plate) # Multi-MA normalization
# MA-loess normalization
B <- normn_MA(sba$X, sba$plate, fitting_FUN= function(m_j, A) loess(m_j ~ A)$fitted)
# weighted linear regression normalization
B <- normn_MA(sba$X, sba$plate, fitting_FUN= function(m_j, A) {
beta <- lm(m_j ~ A, weights= 1/A)$coefficients
beta[1] + beta[2] * A
})
# robust linear regression normalization
if(any(search() == "package:MASS")) { # excutable only when MASS package was loaded.
B <- normn_MA(sba$X, sba$plate, fitting_FUN= function(m_j, A) {
beta <- rlm(m_j ~ A, maxit= 100)$coefficients
beta[1] + beta[2] * A
})
}