https://github.com/whitews/flowio
A Python library for reading and writing Flow Cytometry Standard (FCS) files
https://github.com/whitews/flowio
cytometry fcs fcs-files flow-cytometry flow-cytometry-analysis flow-cytometry-files immunology python
Last synced: about 2 months ago
JSON representation
A Python library for reading and writing Flow Cytometry Standard (FCS) files
- Host: GitHub
- URL: https://github.com/whitews/flowio
- Owner: whitews
- License: bsd-3-clause
- Created: 2013-11-23T02:03:08.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2025-03-28T22:06:55.000Z (2 months ago)
- Last Synced: 2025-03-30T00:05:00.108Z (2 months ago)
- Topics: cytometry, fcs, fcs-files, flow-cytometry, flow-cytometry-analysis, flow-cytometry-files, immunology, python
- Language: Python
- Homepage: https://flowio.readthedocs.io
- Size: 11.5 MB
- Stars: 45
- Watchers: 4
- Forks: 22
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# FlowIO
[](https://pypi.python.org/pypi/flowio/)
[](https://pypi.python.org/pypi/flowio/)
[](https://pypi.python.org/pypi/flowio/)
[](https://zenodo.org/badge/latestdoi/14634514)[](https://github.com/whitews/FlowIO/actions/workflows/tests_master.yml)
[](https://github.com/whitews/FlowIO/actions/workflows/tests_develop.yml)
[](https://codecov.io/gh/whitews/flowio)
[](https://flowio.readthedocs.io/en/latest/?badge=latest)
## Overview
FlowIO is a Python library for reading / writing Flow Cytometry Standard (FCS)
files, with zero external dependencies and is compatible with Python 3.7+.FlowIO retrieves event data exactly as it is encoded in the FCS file: as a
1-dimensional list without separating the events into channels or performing
any preprocessing (e.g. applying gain). Metadata stored in the FCS file is
available as a dictionary via the 'text' attribute. Basic attributes are also
available for commonly accessed properties. For example, the channel count
can be used to easily convert the event data to a multi-column NumPy array:```
import flowio
import numpyfcs_data = flowio.FlowData('example.fcs')
npy_data = numpy.reshape(fcs_data.events, (-1, fcs_data.channel_count))
```For higher level interaction with flow cytometry data, including GatingML and FlowJo 10 support,
see the related [FlowKit](https://github.com/whitews/FlowKit) project.## Installation
The recommended way to install FlowIO is via the `pip` command:
```
pip install flowio
```Or, if you prefer, you can install from the GitHub source:
```
git clone https://github.com/whitews/flowio
cd flowio
pip install .
```## Documentation
The FlowIO API documentation is available [on ReadTheDocs here](https://flowio.readthedocs.io/en/latest/?badge=latest). If you have any questions about FlowIO or find any bugs [please submit an issue to the GitHub repository here](https://github.com/whitews/FlowIO/issues/new/).
### Changelogs
[Changelogs for versions are available here](https://github.com/whitews/FlowIO/releases)