-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reading and Parsing .fcs files from Biorad S3e Cell #241
Comments
I'm still new to .fcs file formats, but the metadat does seem to be read. i see reference to byte offset in the documentation, but can't quite understand the implications. The PnG tags are all zero which I read somewhere is the amplifier gain, but I don't know if this means something special based on other tags. The fact that these same files read into other cytometry programs suggest that flowkit is handling something differently. I can't figure what yet. sample.get_metadata() prduces the following if it is helpful:
|
Hi Rob, Thanks for submitting this issue. The problem is definitely related to those 0 gain values. Re-reading he FCS specification sections on the PnG keyword, only non-zero values should be scaled. So a zero value is equivalent to a gain value of 1.0 (i.e. no gain). I'm currently working on an update which will move pre-processing event data to the underlying FlowIO library. I'll include a fix for this in the next release. Do you mind if I include your FCS file in the repo as part of the test data? Thanks again, |
You are welcome to use the file as part of the test data. Thanks for looking into the issue. |
Biorad S3e Cell sorter .fcs
|
work-around -- This means you can then use "source=" argument to access and work with your raw data, as in: ** ISSUE WITH WORK-AROUND ** |
Hi Rob, The presence of multiple time channels does pose a problem, especially in this case where neither have the conventional label string of "Time" (regardless of case, e.g. "TIME", "time", etc.). The FCS specification doesn't explicitly state that channels such as those in this example are invalid, but does imply there should be a single time channel and it should be identified by the PnN label "TIME". From section 3.2.20, in the $PnN description:
The The "SORT" channel being included in Thanks, |
Describe the bug
I have been unable to open .fcs files from a biorad S3e cell sorter. The error message does not make it clear what the mistake is.
I can read the files with prosort (Biorad machine software) and with FCS Express 6. I can also read these same files using R code with flowcore and associated packages, but this was not the case when I started. In case the error is related, it might be worth looking at that problem report link: https://support.bioconductor.org/p/72379/ .
My memory is that the R flowcore problem was related to an unsigned vs signed integer in the file in some spot that we identified with a hex editor.
As noted at the bottom, I have attached a zipped .fcs file that fails to open.
Here is the tutorial code I tried in a jupyter notebook
Code To Reproduce
Code to reproduce the behavior:
Here is the result on the vscode console:
Expected behavior
I expected the files to read in and form what is called a "flowset" in the R world or perhaps some other object of eqivalent python form.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
Additional context
I am including an examplezipped Biorad S3e Cell sorter .fcs file so you can try it yourself and examine the file structure. Perhaps it is just my novice python skills.
M0_WM278_S1.zip
The text was updated successfully, but these errors were encountered: