/octopus

Bayesian haplotype-based mutation calling

Primary LanguageC++MIT LicenseMIT

Octopus Logo

Website Build Status MIT license Gitter GitHub release (latest SemVer) Anaconda-Server Badge Docker Image Version (latest semver)

Octopus is a mapping-based variant caller that implements several calling models within a unified haplotype-aware framework. Octopus takes inspiration from particle filtering by constructing a tree of haplotypes and dynamically pruning and extending the tree based on haplotype posterior probabilities in a sequential manner. This allows octopus to implicitly consider all possible haplotypes at a given loci in reasonable time.

There are currently six calling models available:

  • individual: call germline variants in a single healthy individual.
  • population: jointly call germline variants in small cohorts.
  • trio: call germline and de novo mutations in a parent-offspring trio.
  • cancer: call germline and somatic mutations tumour samples.
  • polyclone: call variants in samples with an unknown mixture of haploid clones, such a bacteria or viral samples.
  • cell: call variants in a set of single cell samples from the same individual.

Octopus calls SNVs, small-medium sized indels, and small complex rearrangements in VCF 4.3.

Quick start

Install Octopus:

$ git clone https://github.com/luntergroup/octopus.git
$ octopus/scripts/install.py --dependencies --forests
$ echo 'export PATH='$(pwd)'/octopus/bin:$PATH' >> ~/.bash_profile
$ source ~/.bash_profile

Call some variants:

$ FOREST="$(pwd)/octopus/resources/forests/germline.v0.7.4.forest"
$ octopus -R hs37d5.fa -I NA12878.bam -T 1 to MT -o NA12878.octopus.vcf.gz --forest $FOREST --threads 8

Documentation

Documentation is hosted on GitHub pages.

Support

Please report any bugs or feature requests to the octopus issue tracker. General chat is hosted on Gitter.

Contributing

Contributions are very welcome! Please consult the contribution guidelines.

Authors

Daniel Cooke and Gerton Lunter

Citing

See publications associated with Octopus.

License

Octopus is distributed under the MIT LICENSE.