Class "ellipsoidGate"

Share:

Description

Class and constructor for n-dimensional ellipsoidal filter objects.

Usage

1
ellipsoidGate(..., .gate, mean, distance=1, filterId="defaultEllipsoidGate")

Arguments

filterId

An optional parameter that sets the filterId of this gate.

.gate

A definition of the gate via a covariance matrix.

mean

Numeric vector of equal length as dimensions in .gate.

distance

Numeric scalar giving the Mahalanobis distance defining the size of the ellipse. This mostly exists for compliance reasons to the gatingML standard as mean and gate should already uniquely define the ellipse. Essentially, distance is merely a factor that gets applied to the values in the covariance matrix.

...

You can also directly describe the covariance matrix through named arguments, as described below.

Details

A convenience method to facilitate the construction of a ellipsoid filter objects. Ellipsoid gates in n dimensions (n >= 2) are specified by a a covarinace matrix and a vector of mean values giving the center of the ellipse.

This function is designed to be useful in both direct and programmatic usage. In the first case, simply describe the covariance matrix through named arguments. To use this function programmatically, you may pass a covarince matrix and a mean vector directly, in which case the parameter names are the colnames of the matrix.

Value

Returns a ellipsoidGate object for use in filtering flowFrames or other flow cytometry objects.

Extends

Class "parameterFilter", directly.

Class "concreteFilter", by class parameterFilter, distance 2.

Class "filter", by class parameterFilter, distance 3.

Slots

mean:

Objects of class "numeric". Vector giving the location of the center of the ellipse in n dimensions.

cov:

Objects of class "matrix". The covariance matrix defining the shape of the ellipse.

distance:

Objects of class "numeric". The Mahalanobis distance defining the size of the ellipse.

parameters:

Object of class "character", describing the parameter used to filter the flowFrame.

filterId:

Object of class "character", referencing the filter.

Objects from the Class

Objects can be created by calls of the form new("ellipsoidGate", ...) or by using the constructor ellipsoidGate. Using the constructor is the recommended way of object instantiation:

Methods

%in%

signature(x = "flowFrame", table = "ellipsoidGate"): The workhorse used to evaluate the filter on data. This is usually not called directly by the user, but internally by calls to the filter methods.

show

signature(object = "ellipsoidGate"): Print information about the filter.

Note

See the documentation in the flowViz package for plotting of ellipsoidGates.

Author(s)

F.Hahne, B. Ellis, N. LeMeur

See Also

flowFrame, polygonGate, rectangleGate, polytopeGate, filter for evaluation of rectangleGates and split and Subsetfor splitting and subsetting of flow cytometry data sets based on that.

Examples

 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
## Loading example data
dat <- read.FCS(system.file("extdata","0877408774.B08",
package="flowCore"))

## Defining the gate
cov <- matrix(c(6879, 3612, 3612, 5215), ncol=2,
dimnames=list(c("FSC-H", "SSC-H"), c("FSC-H", "SSC-H")))
mean <- c("FSC-H"=430, "SSC-H"=175)
eg <- ellipsoidGate(filterId= "myEllipsoidGate", .gate=cov, mean=mean)

## Filtering using ellipsoidGates
fres <- filter(dat, eg)
fres
summary(fres)

## The result of ellipsoid 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)

##ellipsoidGate can be converted to polygonGate by interpolation
pg <- as(eg, "polygonGate")
pg

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.