Skip to content
forked from whitews/FlowIO

A Python library for reading and writing Flow Cytometry Standard (FCS) files

License

Notifications You must be signed in to change notification settings

JcGKitten/FlowIO

 
 

Repository files navigation

FlowIO

PyPI license PyPI pyversions PyPI version DOI

Build & test (master) Build & test (develop) Coverage Documentation Status

Overview

FlowIO is a Python library for reading / writing Flow Cytometry Standard (FCS) files and has zero external dependencies. FlowIO is compatible with Python 3.7+ (FlowIO v0.9.9 was the last release supporting Python 2).

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). However, all the 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 numpy

fcs_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 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
python setup.py install

Documentation

The FlowIO API documentation is available on ReadTheDocs here. If you have any questions about FlowIO or find any bugs please submit an issue to the GitHub repository here.

Changelogs

Changelogs for versions are available here

About

A Python library for reading and writing Flow Cytometry Standard (FCS) files

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%