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]]

