Entering edit mode
Ariful Azad
▴
10
@ariful-azad-5646
Last seen 10.4 years ago
Hello Everybody,
This is my first post to this list, so please advise me if this is not
a
right place to post this question.
I was trying to modify a flowFrame by accessing the raw data matrix
obtained from exprs(). This operation, however, does not changes tthe
parameters of the flowFrame ( can be found by pData(parameters(ff)) ).
In particular I was unable to use operations such as filter at later
stage
if I directly modify exprs(). Please take a look at the following two
methods of transformations. They are essentially doing the same
transformation but I am getting error in subsequent analysis if I
transform
exprs(ff) directly without using transform function in flowCore.
##### first use direct transformation... error on the filter #########
> ff = GvHD[[1,3:4]]
> exprs(ff) = asinh(exprs(ff)/10000)
> ff
flowFrame object 's5a01'
with 3420 cells and 2 observables:
name desc range minRange maxRange
$P3 FL1-H CD15 FITC 1024 1 10000
$P4 FL2-H CD45 PE 1024 1 10000
124 keywords are stored in the 'description' slot
> summary(ff)
FL1-H FL2-H
Min. 0.0001000 0.000100
1st Qu. 0.0004621 0.003833
Median 0.0017590 0.010840
Mean 0.0841400 0.033600
3rd Qu. 0.1090000 0.053100
Max. 0.8814000 0.825300
> c1f <- curv1Filter(filterId="myCurv1Filter", x='FL2-H')
> fres <- filter(ff, c1f)
Error in if (from == to) rep.int(from, length.out) else
as.vector(c(from,
:
missing value where TRUE/FALSE needed
In addition: Warning messages:
1: In min(x[, id]) : no non-missing arguments to min; returning Inf
2: In max(x[, id]) : no non-missing arguments to max; returning -Inf
>
##### Now use transformation of flowCore. No error on the filter
#########
> ff = GvHD[[1,3:4]]
> ff = transform(ff, `FL1-H`=asinh(`FL1-H`/10000),
`FL2-H`=asinh(`FL2-H`/10000))
> ff
flowFrame object 's5a01'
with 3420 cells and 2 observables:
name desc range minRange maxRange
$P3 FL1-H CD15 FITC 1024 1e-04 0.8813736
$P4 FL2-H CD45 PE 1024 1e-04 0.8813736
128 keywords are stored in the 'description' slot
> summary(ff)
FL1-H FL2-H
Min. 0.0001000 0.000100
1st Qu. 0.0004621 0.003833
Median 0.0017590 0.010840
Mean 0.0841400 0.033600
3rd Qu. 0.1090000 0.053100
Max. 0.8814000 0.825300
> c1f <- curv1Filter(filterId="myCurv1Filter", x='FL2-H')
> fres <- filter(ff, c1f)
#########################################
I am looking for a way such that the first method does work. I wanted
to
transform on exprs() because it is faster .
Thanks
Ariful Azad
PhD Student
Purdue University
[[alternative HTML version deleted]]