Streaming Pileupy Documentation Status Updates

Create multi-sample text-pileups of streaming SAM/BAM files.


Streaming Pileupy creates a pileup of a single SAM/BAM file using the read group SM identifier to split reads by sample:

# extract sample names from read group SM tag
samtools view -H input.bam \
  | grep '^@RG' \
  | perl -pne 's/.*SM:(\S+).*/$1/' \
  | sort | uniq > sample_names.txt

# create read-group aware pileup
spileup input.bam sample_names.txt

Base quality filtering

Bases with less than a certain quality can be filtered with -Q.

Missing features

  • Read beginning and end annotations in pileup output
  • Deletion annotations in pileup output
  • Filter output bases on BED file

Speed benchmarks

Speed benchmarks are available at

The benchmarks are run using Airspeed Velocity:


This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.