RmaPlm: The RmaPlm class

Description Usage Arguments Fields and Methods Model Different flavors of model fitting Author(s) References


Package: aroma.affymetrix
Class RmaPlm


Directly known subclasses:
ExonRmaPlm, HetLogAddCnPlm, HetLogAddPlm, HetLogAddSnpPlm, RmaCnPlm, RmaSnpPlm

public abstract static class RmaPlm
extends ProbeLevelModel

This class represents the log-additive model part of the Robust Multichip Analysis (RMA) method described in Irizarry et al (2003).


RmaPlm(..., flavor=c("affyPLM", "oligo"))



Arguments passed to ProbeLevelModel.


A character string specifying what model fitting algorithm to be used. This makes it possible to get identical estimates as other packages.

Fields and Methods

No methods defined.

Methods inherited from ProbeLevelModel:
calculateResidualSet, calculateWeights, fit, getAsteriskTags, getCalculateResidualsFunction, getChipEffectSet, getProbeAffinityFile, getResidualSet, getRootPath, getWeightsSet

Methods inherited from MultiArrayUnitModel:
getListOfPriors, setListOfPriors, validate

Methods inherited from UnitModel:
findUnitsTodo, getAsteriskTags, getFitSingleCellUnitFunction, getParameters

Methods inherited from Model:
as.character, fit, getAlias, getAsteriskTags, getDataSet, getFullName, getName, getPath, getRootPath, getTags, setAlias, setTags

Methods inherited from ParametersInterface:
getParameterSets, getParameters, getParametersAsString

Methods inherited from Object:
$, $<-, [[, [[<-, as.character, attach, attachLocally, clearCache, clearLookupCache, clone, detach, equals, extend, finalize, getEnvironment, getFieldModifier, getFieldModifiers, getFields, getInstantiationTime, getStaticInstance, hasField, hashCode, ll, load, names, objectSize, print, save, asThis


For a single unit group, the log-additive model of RMA is:

log_2(y_{ik}) = β_i + α_k + \varepsilon_{ik}

where β_i are the chip effects for arrays i=1,...,I, and α_k are the probe affinities for probes k=1,...,K. The \varepsilon_{ik} are zero-mean noise with equal variance. The model is constrained such that ∑_k{α_k} = 0.

Note that all PLM classes must return parameters on the intensity scale. For this class that means that θ_i = 2^β_i and φ_k = 2^α_k are returned.

Different flavors of model fitting

There are a few differ algorithms available for fitting the same probe-level model. The default and recommended method (flavor="affyPLM") uses the implementation in the preprocessCore package which fits the model parameters robustly using an M-estimator (the method used to be in affyPLM).

Alternatively, other model-fitting algorithms are available. The algorithm (flavor="oligo") used by the oligo package, which originates from the affy packages, fits the model using median polish, which is a non-robust estimator. Note that this algorithm does not constraint the probe-effect parameters to multiply to one on the intensity scale. Since the internal function does not return these estimates, we can neither rescale them.


Henrik Bengtsson, Ken Simpson


Irizarry et al. Summaries of Affymetrix GeneChip probe level data. NAR, 2003, 31, e15.

aroma.affymetrix documentation built on May 29, 2017, 9:47 a.m.