Cell populations of roughly elliptical shape in two-dimensional projections are of huge interest in many flow cytometry applications. This function identifies a single such population, potentially from a mixture of multiple populations.
lymphGate(x, channels, preselection=NULL, scale=2.5, bwFac=1.3, filterId="defaultLymphGate", evaluate=TRUE, plot=FALSE, ...)flowSet. x. NULL, in which case this boils down
to fitting a regular
norm2Filter, a
character scalar giving one of the flow parameters in x, or a
named list of numerics specifying the initial rough
preselection. The latter gets passed on to
rectangleGate, see it's documentation for
details. scaleFactor parameter that gets passed on to
norm2Filter. curv1Filter. filterResult
and the subset). flowSet. norm2Filter object. filterResult after
applying the norm2Filter on the flowSet. lymphGate function. Note that x and
n2gateResults are NULL when eval=FALSE.parameterFilter,
directly. Class concreteFilter,
by class "parameterFilter", distance 2. Class filter, by class
"parameterFilter", distance 3. Arguments section for details. preselection:character, the
name of the flow parameter used for preselection. rectDef:list, the initial
rectangular selection. scale:numeric.bwFac:numeric.parameters:parameters, the flow
parameters to operate on. filterId:"character", the
filter identifier. new("lymphFilter",
parameters, ...) or using the constructor lymphFilter. The
constructor is the recommended way of object instantiation. This algorithm does not apply real mixture modelling, however it is able to identify a single elliptical cell population from a mixture of multiple such populations. The idea is to first define a rough rectangular preselection and, in a second step, fit a bivariate normal distribution to this subset only.
Depending on the value of preselection, the initial rough
selection is either
CD4+ T-cells and using this
information to back-gate lymphocytes in FSC and
SSC. Positive cells are identified using a
curv1Filter.
norm2Filter,
curv1Filter
data(GvHD)
dat <- GvHD[pData(GvHD)$Patient==10]
dat <- transform(dat, "FL4-H"=asinh(`FL4-H`))
lg <- lymphGate(dat, channels=c("FSC-H", "SSC-H"), preselection="FL4-H",scale=1.5)
if(require(flowViz))
xyplot(`SSC-H`~`FSC-H`, dat, filter=lg$n2gate)
Run the code above in your browser using DataLab