RGLab / flowStats

flowStats: algorithms for flow cytometry data analysis using BioConductor tools
15 stars 10 forks source link

issue in spillover_ng : rows are swapped with 'pregate = FALSE' #41

Open phauchamps opened 2 years ago

phauchamps commented 2 years ago

Dear flowStats team,

During the last few days, I have been testing the compensation in flowStats (spillover_ng()) and have come accross a couple of issues. Here is one of them :

In function spillover_ng(), when using 'pregate=FALSE', it can happen that in the returned spill-over matrix, the raws of the various channels are swapped, hence the matrix coefficients are attached to the wrong channel.

Attached is an easy example for reproducing the behavior. It uses a public dataset that you would need to download from flowRepository (https://flowrepository.org/id/FR-FCM-ZZ36). The example R file performs the compensation for a subset of 6 channels. The output matrix from flowStats is provided , as well as the calculation of the compensation in flowJo, showing that the rows are attached to the wrong channel.

Thanks, flowStats_spillover_issue_swap_rows.zip

Philippe

malisas commented 2 years ago

Thanks for providing the really good example, Philippe. This bug should be fixed by the above PR.

phauchamps commented 2 years ago

Hi flowStats team, Could you say in which version of flowStats this fix should be released ? I don't see it mentioned (yet) in NEWS file. Thx ! Philippe