Entering edit mode
Aric Gregson
▴
270
@aric-gregson-3058
Last seen 10.2 years ago
Hello,
I am trying out the quadrant and rangeGate methods in flowStats with a
small
sample of data. It seems that they do not play well with asinh
transformed
data when there is a small, but significant, population below zero. I
have
tuned the adjustable parameters sd, alpha and borderQuant as much as
possible, but with less than ideal results. What I am looking for I
suppose
is a way to tell the algorithm to ignore points below 0 when
calculating the
gates.
For example, in the fluorochrome channels there are two distinct
populations
that have values above zero, and there is a small population with
values
below zero. For determining positive and negative gates, only the two
populations that have values above zero should be considered. The
values
below zero should be lumped in with the non-zero but still negative
numbers.
Just wondering if there is a way to do this without having to manually
program the gates.
Thanks, Aric
wf <- workFlow(fs, name="2009_03_05 Asinh Workflow")
# remove boundry events before transformation as transform SSC
boundaryfilter <- boundaryFilter(filterId = "boundaryfilter",
x = c("FSC.A", "SSC.A"))
add(wf, boundaryfilter)
singletfilter = polygonGate(`FSC.A` =
c(10000,13000,20000,40000,60000,80000,100000,160000,200000,263000,2630
00,
200000,160000,100000,80000,60000,40000,20000,14000,8000),
`FSC.H` =
c(5000,5000,10000,22000,34000,50000,65000,115000,150000,200000,220000,
170000,130000,78000,62000,45000,30000,15000,10000,5000),
filterId="Singlet")
add(wf, singletfilter, parent="boundaryfilter+")
asinhtf <- transformList(colnames(fs)[4:19],
asinh,
transformationId="asinh")
add(wf, asinhtf, parent="Singlet+")
lymphfilter <- lymphGate(Data(wf[["asinh"]]), channels=c("FSC.A",
"SSC.A"),
preselection="APC.H7.A", filterId="Lymphs", eval=FALSE, scale=2)
add(wf, lymphfilter$n2gate, parent="asinh")
pars <- colnames(Data(wf[["base view"]]))[c(10,11,12,13,18,19)]
norm <- normalization(normFun = function(x, parameters, ...)
warpSet(x, parameters, ...),
parameters = pars,
normalizationId= "Warping")
add(wf, norm, parent="Lymphs+")
## absolute=T & borderQuant=0.9 help with CD3, but not CD4
qgate <- quadrantGate(Data(wf[["Warping"]]),
stains=c("AmCyan.A", "APC.H7.A"),
plot=FALSE,
filterId="CD3CD4",
absolute=TRUE,
borderQuant=0.8,
alpha=0.9,
sd=0.1)
add(wf, qgate, parent="Warping")
## can't get much better than this without removing negative numbers
qgateLive <- quadrantGate(Data(wf[["Warping"]]),
stains=c("Indo.1..Violet..A", "APC.H7.A"),
plot=TRUE,
filterId="LiveCD4",
absolute=TRUE,
borderQuant=1, #0 is wrong direction
alpha=1,#0.9
sd=0)
> sessionInfo()
R version 2.11.0 (2010-04-22)
amd64-portbld-freebsd8.0
locale:
[1] C
attached base packages:
[1] splines tools stats graphics grDevices utils
datasets
[8] methods base
other attached packages:
[1] flowStats_1.6.0 cluster_1.12.3 fda_2.2.1
[4] zoo_1.6-3 flowQ_1.8.0 latticeExtra_0.6-11
[7] RColorBrewer_1.0-2 parody_1.6.0 bioDist_1.20.0
[10] KernSmooth_2.23-3 mvoutlier_1.4 outliers_0.13-2
[13] flowViz_1.12.0 lattice_0.18-5 flowCore_1.14.1
[16] rrcov_1.0-00 pcaPP_1.8-1 mvtnorm_0.9-9
[19] robustbase_0.5-0-1 Biobase_2.8.0 fortunes_1.3-7
loaded via a namespace (and not attached):
[1] AnnotationDbi_1.10.1 DBI_0.2-5 MASS_7.3-5
[4] RSQLite_0.9-0 annotate_1.26.0 feature_1.2.4
[7] geneplotter_1.26.0 graph_1.26.0 grid_2.11.0
[10] ks_1.6.12 stats4_2.11.0 xtable_1.5-6