Entering edit mode
'Logicle' c++ class and its member functions are defined in
'logicle.h'
and 'logicle.cpp' (from original author Wayne Moore), apparently you
can
use it in your c++ codes as long as you place the copyright notice (
see
example file 'hyperlog.notice.html' in the flowCore source root).
Here is how to use in c++:
vector<double> output (n);
Logicle lg = Logicle(T, W, M, A);
for (int i = 0; i < n; i++)output[i] = lg->scale(output)[i] * M ;
And Here is the R code for using logicle transformation
data(GvHD)
samp <- GvHD[[1]]
## User defined logicle function
lgcl <- logicleTransform( w = 0.5, t= 10000, m =4.5)
after <- transform(samp, `FL1-H` = lgcl(`FL1-H`), `FL2-H` =
lgcl(`FL2-H`))
## check the transformed results by plotting it
densityplot(~`FL1-H`, samp)
densityplot(~`FL1-H`, after)
## Automatically estimate the logicle transformation based on the data
lgcl <- estimateLogicle(samp, channels = c("FL1-H", "FL2-H", "FL3-H",
"FL2-A", "FL4-H"))
## transform parameters using the estimated logicle transformation
after <- transform(samp, lgcl)
## plot all channels to check the transformed results
densityplot(~., samp)
densityplot(~., after)
Mike
On 04/14/2014 12:34 AM, Elina.Alaterre at horiba.com wrote:
> Hi Mike,
>
>
> I have cytometer data with coordinates for each point. These data
were
> compensated with Spillover matrix.
>
> How can I tranform these compensated data ? (I use my own C++
program to do
> that)
>
> I find in the flowCore package some C++ scripts
(logicleTransform.cpp,
> Logicle.cpp, biexponential.c ...) I do not understand their
features. Can
> I use them to do the transformation ?
>
> If you have some tutorials.
>
> Also, when I use R to tranform data with the logicle transformation,
I
> would like to know the functions or methods used step by step.
>
> Sincerely,
> Elina Alaterre.
>
>
>
>