Class and constructor for n-dimensional rectangular
An optional parameter that sets the
A definition of the gate. This can be either a list, or a matrix, as described below.
You can also directly provide the boundaries of a
This class describes a rectangular region in n dimensions, which is a
Cartesian product of
n orthogonal intervals in these
n=1 corresponds to a range gate,
n=2 to a
n=3 corresponds to a box region and
to a hyper-rectangular regions. Intervals may be open on one side, in
which case the value for the boundary is supposed to be
rectangleGates are inclusive, that
means that events on the boundaries are considered to be in the gate.
The constructor is designed to be useful in both direct and
programmatic usage. To use it programmatically, you may either
construct a named list or you may construct a matrix with
2 rows. The first row corresponds to the minimal
value for each parameter while the second row corresponds to the
maximal value for each parameter. The names of the parameters are
taken from the column names or from the list names,
respectively. Alternatively, the boundaries of the
rectangleGate can be given as additional named arguments, where
each of these arguments should be a numeric vector of length
the function tries to collapse these boundary values into a matrix.
Note that boundaries of
min > max
are syntactically valid, however when evaluated they will always be
rectangleGate objects can also be multiplied using the
operator, provided that both gates have orthogonal axes. This results
rectangleGates. The inverse operation of
subsetting by parameter name(s) is also available.
rectangleGate generates an object of class
rectangleGates can be used to subset and to split flow
cytometry data sets.
rectangleGate object for use in filtering
flowFrames or other flow cytometry objects.
"concreteFilter", by class
parameterFilter, distance 2.
"filter", by class
Objects of class
minimum and maximum values of the n-dimensional rectangular
Object of class
indicating the parameters for which the
Object of class
referencing the filter.
Objects can be created by calls of the form
...), by using the constructor
rectangleGate or by combining
rectangleGates using the
* method. Using the
constructor is the recommended way of object instantiation:
signature(x = "flowFrame", table =
"rectangleGate"): The workhorse used to evaluate the filter on
data. This is usually not called directly by the user, but
internally by calls to the
signature(object = "rectangleGate"): Print
information about the filter.
signature(e1 = "rectangleGate", e2 =
"rectangleGate"): combining two
rectangleGates into one
higher dimensional representation.
signature(x = "rectangleGate", i = "character"):
Subsetting of a
rectangleGate by parameter name(s). This
is essentially the inverse to
See the documentation in the
flowViz package for details on
F.Hahne, B. Ellis N. Le Meur
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
## Loading example data dat <- read.FCS(system.file("extdata","0877408774.B08", package="flowCore")) #Create directly. Most likely from a command line rectangleGate(filterId="myRectGate", "FSC-H"=c(200, 600), "SSC-H"=c(0, 400)) #To facilitate programmatic construction we also have the following rg <- rectangleGate(filterId="myRectGate", list("FSC-H"=c(200, 600), "SSC-H"=c(0, 400))) mat <- matrix(c(200, 600, 0, 400), ncol=2, dimnames=list(c("min", "max"), c("FSC-H", "SSC-H"))) rg <- rectangleGate(filterId="myRectGate", .gate=mat) ## Filtering using rectangleGates fres <- filter(dat, rg) fres summary(fres) ## The result of rectangle filtering is a logical subset Subset(dat, fres) ## We can also split, in which case we get those events in and those ## not in the gate as separate populations split(dat, fres) ## Multiply rectangle gates rg1 <- rectangleGate(filterId="FSC-", "FSC-H"=c(-Inf, 50)) rg2 <- rectangleGate(filterId="SSC+", "SSC-H"=c(50, Inf)) rg1 * rg2 ## Subset rectangle gates rg["FSC-H"] ##2d rectangleGate can be coerced to polygonGate as(rg, "polygonGate")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.