Position-wise analysis of sequencing and genomics data
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Welcome to plastid!

For documentation, see our home page on ReadtheDocs.

To run the tests, download the test dataset and unpack it into plastid/test.


plastid is a Python library for genomic analysis -- in particular, high-throughput sequencing data -- with an emphasis on simplicity for users. It was written by Joshua Dunn in Jonathan Weissman's lab at UCSF, initially for analysis of ribosome profiling and RNA-seq data. Versions of it have been used in several publications.

plastid's intended audience includes computational and traditional biologists, software developers, and even those who are new to sequencing analysis. It is released under the BSD 3-Clause license.

This package provides:

  1. A set of scripts that implement common sequencing analyses
  2. A set of classes for exploratory data anlysis. These provide simple and consistent interfaces for manipulating genomic features, read alignments, and quantitative data; and readily interface with existing scientific tools, like the SciPy stack.
  3. Script writing tools that make it easy to use the objects implemented in plastid.
  4. Extensive documentation, both in source code and at our home page on ReadtheDocs.



install with bioconda

Bioconda is a channel for the conda package manager with a focus on bioinformatics software. Once you have Bioconda installed, installing plastid is as easy as running:

$ conda create -n plastid plastid
$ source activate plastid

This will install all of the necesary dependencies for plastid in an isolated environment.


plastid can be installed directly from PyPI, but requires numpy, pysam, and cython to be installed first i.e.:

$ pip install numpy pysam cython
$ pip install plastid

If you get any runtime warnings about numpy versions having changed, or about a missing module in Pysam, or about some object being the wrong size, try regenerating the included C source files from the original Cython code. To do this type:

$ pip install --upgrade  --install-option='--recythonize' plastid

Links & help

  • Documentation
  • Our github repo
  • Subscribe to our mailing list by emailing listserv@listserv.ucsf.edu with the message subscribe plastidinfo firstname lastname and an empty subject line
  • Test dataset, for development or validation of installations
  • Bioconda