curvHDRfilter {curvHDR} | R Documentation |
Filtering via the curvHDR method.
Description
Filter univariate or bivariate data using the curvHDR method. The motivating application is flow cytometry, where the filters endeavour to mimic human-perceived gates.
Usage
curvHDRfilter(x, HDRlevel, growthFac = NULL, signifLevel = 0.05,
bwFac = 1, gridsize = NULL, removeDebri = TRUE,
minSampSize = NULL, HpiGridSize = NULL, quiet = TRUE,
graphChk = FALSE)
Arguments
x |
array containing the input data, typically corresponding
to flow cytometric
measurements. |
HDRlevel |
number between 0 and 1 corresponding to the level of the highest density region within each high curvature region. |
growthFac |
growth factor parameter. High curvature regions are grown
to have ‘volume’ |
signifLevel |
number between 0 and 1 corresponding to the
significance level for curve region determination. The default value
of |
bwFac |
bandwidth factor. The default bandwidth is multiplied
by |
gridsize |
vector of number of grid points in each direction |
removeDebri |
Boolean flag for removal of ‘debri’ points in the
input data. The default value of |
minSampSize |
curvHDR regions with less than |
HpiGridSize |
gridsize used for plug-in bandwidth
selection in the case where the input data
is trivariate. The default value of
|
quiet |
Boolean flag for ‘quiet’
running. If |
graphChk |
Boolean flag for graphical checking. If |
Value
data |
the input data (for use in plotting). |
insideFilter |
logical variable indicating the rows of the input data matrix corresponding to points inside the curvHDR filter. |
polys |
the curvHDR filter. Depending on the dimension d this is a list of intervals (d=1), polygons (d=2) or polyhedra (d=3). |
HDRlevel |
highest density region level |
Author(s)
G. Luta, U. Naumann and M.P. Wand
References
Naumann, U., Luta, G. and Wand, M.P. (2009).
The curvHDR method for gating flow cytometry samples.
BMC Bioinformatics, 11:44, 1-13.
See Also
Examples
library(curvHDR)
# Univariate curvHDR examples:
xUniv <- c(rnorm(1000,-2),rnorm(1000,2))
gate1a <- curvHDRfilter(xUniv)
plot(gate1a)
print(gate1a$poly) # List of intervals that define gate1a.
## Not run: print(gate1a$insideFilter) # Indicators of inclusion of
# xUniv inside gate1a.
## End(Not run)
gate1b <- curvHDRfilter(xUniv,HDRlevel=0.5)
plot(gate1b)
print(gate1b$poly) # List of intervals that define gate1b.
## Not run: print(gate1b$insideFilter) # Indicators of inclusion of
# xUniv inside gate1b.
## End(Not run)
# Bivariate curvHDR examples:
xBiva <- cbind(c(rnorm(1000,-2),rnorm(1000,2)),
c(rnorm(1000,-2),rnorm(1000,2)))
## Not run: gate2a <- curvHDRfilter(xBiva)
plot(gate2a)
print(gate2a$poly) # List of polygon vertices that define gate2a.
print(gate2a$insideFilter) # Indicators of inclusion of
# xBiva inside gate2a.
## End(Not run)
## Not run:
gate2b <- curvHDRfilter(xBiva,HDRlevel=0.5)
plot(gate2b)
print(gate2b$poly) # List of polygon vertices that define gate2b.
print(gate2b$insideFilter) # Indicators of inclusion of
# xBiva inside gate2b.
## End(Not run)
# Trivariate curvHDR examples:
## Not run:
xTriv <- cbind(c(rnorm(1000,-2),rnorm(1000,2)),
c(rnorm(1000,-2),rnorm(1000,2)),
c(rnorm(1000,-2),rnorm(1000,2)))
gate3a <- curvHDRfilter(xTriv)
plot(gate3a)
print(gate3a$poly) # List of polyhedron elements that define gate3a.
print(gate3a$insideFilter) # Indicators of inclusion of
# xTriv inside gate3a.
## End(Not run)
## Not run:
gate3b <- curvHDRfilter(xTriv,HDRlevel=0.5)
plot(gate3b)
print(gate3b$poly) # List of polyhedron elements that define gate3b.
print(gate3b$insideFilter) # Indicators of inclusion of
# xTriv inside gate3b.
## End(Not run)