Skip to main content

Balanced parentheses

Project description

Improved Octo Waddle

An implementation of the balanced parentheses tree structure as described by Cordova and Navarro.

Install notes

Installation is a two step procedure right now due to the chicken and egg problem of requiring numpy and cython for setup.py to execute. The package is named iow in pypi as "bp" was taken at time of registration.

$ conda create --name bp python=3.8
$ conda activate bp
$ conda install numpy cython
$ pip install iow

Developer notes

If pulling the source, please note that we use a submodule and Github does not by default bring it down. After a clone, please run:

$ git submodule update --init --recursive

Fragment insertion

BP supports the jplace format. Fragments can be inserted using either fully-resolved or multifurcation mode to resolve multiple placements to the same edge. In fully resolved, the edge placed against is broken N times where N is the number of fragments on the edge. In multifurcation, a new node is constructed as the average of the distal length for the N fragments, and a separate multifurcation node is added which encompasses the placed fragments.

Insertions can be handled by the command line following install:

$ bp placement --help
Usage: bp placement [OPTIONS]

Options:
  --placements PATH               jplace formatted data  [required]
  --output PATH                   Where to write the resulting newick
                                  [required]

  --method [fully-resolved|multifurcating]
                                  Whether to fully resolve or multifurcate
                                  [required]

  --help                          Show this message and exit.

Note that the multifurcating support relies on GPL code derived from the Genesis project. That code and LICENSE can be found under bp/GPL.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iow-1.0.5.tar.gz (1.1 MB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page