[BioC] flowWorkspace transformation on FCS 3 data (Nikolas)

Greg Finak gfinak at fhcrc.org
Fri Apr 13 18:38:06 CEST 2012


> ------
> 
> Message: 22
> Date: Fri, 13 Apr 2012 01:22:21 +0100
> From: Nikolas <n.pontikos at gmail.com>
> To: bioconductor at r-project.org
> Subject: [BioC] flowWorkspace transformation on FCS 3 data
> Message-ID:
> 	<CAKXtTxp5kFLOgh4im1UHFMQftOmoxZ1-g-VwLXQO3UzkTh0krg at mail.gmail.com>
> Content-Type: text/plain; charset=UTF-8
> 
> Hello,
> 
> I am bit puzzled as to how flowWorkspace transforms FCS 3 data (see code below).
> I would expect fcs.data.comp and fcs.data.1 to contain similar (if not
> identical) data yet the range is completely different.
They should not be identical. fcs.data.1 contains compensated and transformed data, while fcs.data.comp has only compensated data.

> Some transform has taken place.
Yes. 
> Does this have anything to do with flowWorkspace trying to simulate
> the binning process that FlowJo does on FCS 3 data?
That binning process is flowJo's way of transforming the data for gating. You have to reproduce the transformation in order to accurately reproduce the gating because the transformation is non-linear and thus gate boundaries on the untransformed (or some inappropriately transformed) scale would also be non-linear. 

> Someone at TreeStar told me that FlowJo does binning with 4096 bins
> which is possibly what is going on here?
Yes that's why the range of the transformed data goes from 1...4096. flowWorkspace stores a mapping back to the raw scale so using plotGate to visualize the data will give you appropriate axes on the raw scale. 

> Many thanks for you help,
> 
> Niko.
> 
> 
> 
> 
> library(flowWorkspace)
> library(flowCore)
> 
> #CAD61.xml is a flowjo workspace file which references CAD61.fcs
> openWorkspace("CAD61.xml") -> wsp
> try(parseWorkspace(wsp, execute=TRUE, isNcdf=FALSE, path=".",
> name="All Samples")) -> G
> G at set[[1]]->g
> 
> getData(g, 1)->fcs.data.1
> 
> read.FCS('CAD61.fcs')->fcs.data
> compensate(fcs.data, fcs.data at description[["SPILL"]])->fcs.data.comp
> 
>> fcs.data.comp
> flowFrame object '71d0bf04-ddb1-4284-ad2b-af44322ecdfb'
> with 300195 cells and 9 observables:
>              name           desc  range minRange maxRange
> $P1          FSC-A           <NA> 262144     0.00   262143
> $P2          SSC-A           <NA> 262144  -111.00   262143
> $P3    Alexa-488-A          cd127 262144  -111.00   262143
> $P4       PE-Cy7-A          hladr 262144  -111.00   262143
> $P5          APC-A cd25_ma251+2a3 262144  -108.00   262143
> $P6           PE-A          cd101 262144  -111.00   262143
> $P7    Alexa-700-A            cd4 262144   -96.00   262143
> $P8 Pacific Blue-A         cd45ra 262144   -91.64   262143
> $P9           Time           <NA> 262144     0.00   262143
> 162 keywords are stored in the 'description' slot
> 
>> fcs.data.1
> flowFrame object '71d0bf04-ddb1-4284-ad2b-af44322ecdfb'
> with 300195 cells and 9 observables:
>                name           desc      range    minRange   maxRange
> $P1            FSC-A           <NA>   3641.837  455.000000   4096.837
> $P2            SSC-A           <NA> 262254.000 -111.000000 262143.000
> $P3    <Alexa-488-A>          cd127   4098.176   -1.339711   4096.837
> $P4       <PE-Cy7-A>          hladr   4098.176   -1.339711   4096.837
> $P5          <APC-A> cd25_ma251+2a3   4088.140    8.696338   4096.837
> $P6           <PE-A>          cd101   4098.176   -1.339711   4096.837
> $P7    <Alexa-700-A>            cd4   4046.566   50.270760   4096.837
> $P8 <Pacific Blue-A>         cd45ra   4030.885   65.951978   4096.837
> $P9             Time           <NA>  21737.000    0.000000  21737.000
> 162 keywords are stored in the 'description' slot
> 
> 
> 



More information about the Bioconductor mailing list