lmdme S4 class: Linear Model decomposition for Designed Multivariate Experiments.


Linear Model ANOVA decomposition of Designed Multivariate Experiments based on limma lmFit implementation. For example in a two factor experimental design with interaction, the linear model of the i-th observation (gene) can be written:

  • X stands for the observed value

  • The intercept μ

  • A, B and AB are the first, second and interaction terms respectively

  • The error term ε ~ N(0,σ^2).

The model is iterative decomposed in a step by step fashion decomposing one term at each time:

  1. The intercept is estimated using X=μ+E_1

  2. The first factor (A) using E_1=A+E_2

  3. The second factor (B) using E_2=B+E_3

  4. The interaction (AB) using E_3=AB+E_4.

For each decomposed step the model, residuals, coefficients, p-values and F-values are stored in a list container, so their corresponding length is equal to the number of model terms + 1 (the intercept).


  1. Flexible formula type interface,

  2. Fast limma based implementation based on lmFit,

  3. p values for each estimated coefficient levels in each factor

  4. F values for factor effects

  5. Plotting functions for PCA and PLS.


  • design: data.frame with experimental design.

  • model: formula with the designed model to be decomposed.

  • modelDecomposition: list with the model formula obtained for each decomposition step.

  • residuals: list of residual matrices G rows(genes) x N columns (arrays-designed measurements).

  • coefficients: list of coefficient matrices. Each matrix will have G rows(genes) x k columns(levels of the corresponding model term).

  • p.values: list of p-value matrices.

  • F.p.values: list with corresponding F-p-values vectors for each individual.

  • components: list with corresponding PCA or PLS components for the selected term/s.

  • componentsType: name character vector to keep process trace of the variance/covariance components slot: decomposition ("pca" or "pls"), type ("apca" for ANOVA-PCA or "asca" for ANOVA-SCA) and scale ("none", "row" or "column")


print, show

Basic output for lmdme class


Basic statistics for lmdme class

design, model, modelDecomposition, residuals and coefficients

Getters for their respective slots.

p.values, F.p.values, components and componentsType

Getters for their respective slots.



Function that produces the complete ANOVA decomposition based on model specification through a formula interface. Technically it's a high level wrapper of the initialize function.


Getter for the used decomposed formula in each step


Adjust coefficients p-values for the Multiple Comparison Tests.

Fpvalues, pvalues

Getters for the corresponding associated decomposed model coefficient statistics in each step, for each observation.

residuals, resid, coef, coefficients, fitted.values, fitted

Getters for the corresponding decomposed model in each step.


Produces the specified lmdme in addition to the required permuted objects (sampling the columns of data), using the same parameters to fit the model.



Function to perform PCA or PLS on the ANOVA decomposed terms. PCA can be performed on E_1, E_2 or E_3 and it is referred to, as ANOVA-PCA (APCA) but, if it is performed on the coefficients it is referred to, as ANOVA-SCA (ASCA). On the other hand PLSR is based on pls library and if it is performed on coefficients (ASCA like) it uses the identity matrix for output co-variance maximization or can be carried out on the E_{1,2 or 3} (APCA like) using the design matrix as the output.


Getter for PCA or PLS decomposed models.


Getter for componentsType slot.


Leverage calculation on PCA (APCA or ASCA) terms.


Biplots for PCA or PLSR decomposed terms.


Screeplot on each PCA decomposed term.


Loadingplot for PCA interaction terms.


Cristobal Fresno and Elmer A Fernandez


  1. Smilde AK, Jansen JJ, Hoefsloot HCJ, Lamer RAN, Van der Greef J, Timmerman ME (2005) ANOVA-simultaneaus component analysis (ASCA): a new tool for analyzing designed
    metabolomics data, Bioinformatics 21,13,3043 DOI:/10.1093/bioinformatics/bti476

  2. Zwanenburg G, Hoefsloot HCJ, Westerhuis JA, Jansen JJ, Smilde AK (2011) ANOVA.Principal component analysis and ANOVA-simultaneaus component analysis: a comparison J.
    Chemometrics 25:561-567 DOI:10.1002/cem.1400

  3. Tarazona S, Prado-Lopez S, Dopazo J, Ferrer A, Conesa A (2012) Variable Selection for Multifactorial Genomic Data, Chemometrics and Intelligent Laboratory Systems, 110:113-122

See Also

lmdme, decomposition, biplot, loadingplot and additional related lmdme class functions.

comments powered by Disqus