normexp.fit {limma}R Documentation

Fit Normal+Exp Convolution Model to Observed Intensities

Description

Fit normal+exponential convolution model to observed intensities. The normal part represents the background and the exponential represents the signal intensities. This function is called by backgroundCorrect and is not normally called directly by the user.

Usage

normexp.fit(x, method="saddle", n.pts=NULL, trace=FALSE)

Arguments

x numeric vector of (background corrected) intensities
method method used to estimate the three parameters, choices are "saddle", "neldermean", "bfgs", "rma" and "mcgee".
n.pts number of quantiles of x to use for the fit. If NA then all values of x will be used.
trace logical, if TRUE, tracing information on the progress of the optimization is given.

Details

This function uses maximum likelihood estimation to fit a model to the background-corrected intensities. The model is a $normal(μ,σ^2)+exponential(α)$ convolution model for the background corrected intensities.

This is essentially the same model which is used by bg.correct.rma in the affy package. The difference is that the parameters are estimated by maximum likelihood and that the estimated background is subtracted before applying the model-based background.

For speed and numerical stability, the likelihood function is approximated by default using a saddle-point approximation. Other choices are "neldermean" or "bfgs" which attempt to maximize the exact log-likelihood, which may be numerically unstable. "rma" uses the kernel estimation method from the RMA algorithm of affy package. "mcgee" uses the RMA-75 method from McGee and Chen (2006).

If the number of rows of x is large, computation time can be saved by setting n.pts to a value less than the total number of probes, for example n.pts=2^14.

Value

A list containing the components

par numeric vector giving estimated values of $μ$, $log(σ)$ and $logα$
m2loglik numeric scalar giving minus twice the log-likelihood
convergence integer code indicating successful convergence or otherwise of the optimization. See optim.

Author(s)

Gordon Smyth and Jeremy Silver

References

McGee, M., and Chen, Z. (2006). Parameter estimation for the exponential-normal convolution model for background correction of Affymetrix GeneChip data. Stat Appl Genet Mol Biol, 5(1), Article 24.

Ritchie, M. E., Silver, J., Oshlack, A., Silver, J., Holmes, M., Diyagama, D., Holloway, A., and Smyth, G. K. (2007). A comparison of background correction methods for two-colour microarrays. Bioinformatics http://bioinformatics.oxfordjournals.org/cgi/content/abstract/btm412

See Also

normexp.signal

An overview of background correction functions is given in 04.Background.

Examples

f <- c(2,3,1,10,3,20,5,6)
b <- c(2,2,2,2,2,2,2,2)
out <- normexp.fit(f-b)
normexp.signal(out$par, x=f-b)

[Package limma version 2.12.0 Index]