Skip to main content

Prediction of lineage-specific gain and loss of sequence elements using phylogenetic maximum parsimony.

Project description

PyPI version Conda GitHub

Host Downloads
PyPI Downloads
conda Conda

mapGL

Prediction of lineage-specific gain and loss of genomic sequence elements based on phylogenetic maximum parsimony.

Label genomic regions as orthologous, gained in the query species, or lost in the target species, based on inferred presence/absence in the most-recent common ancestor (MRCA). Chained alignment files are used to map features from query to target and one or more outgroup species. Features that map directly from query to target are labeled as orthologs, and ortholgous coordinates in the target species are given in the output. Non-mapping features are assigned as gains or losses based on a maximum-parsimony algorithm predicting presence or absence in the MRCA.

Based on bnMapper.py, by Ogert Denas (James Taylor lab):

Dependencies

numpy bx-python cython six

Usage

mapGL.py [-h] [-o FILE] [-t FLOAT] [-g GAP] [-v {info,debug,silent}] [-k] input tree qname tname alignments [alignments ...]

Required Arguments

Argument Description
input Input regions to process. Should be in standard bed format. Only the first four bed fields will be used.
tree Phylogenetic tree describing relationships of query and target species to outgroups. Must be in standard Newick format. Branch lengths are optional, and will be ignored.
qname Name of the query species. Regions from this species will be mapped to target species coordinates.
tname Name of the target species. Regions from the query species will be mapped to coordinates from this species.
alignments Alignment files (.chain or .pkl): One for the target species and one per outgroup species. Files should be named according to the convention: qname.tname[...].chain.gz, where qname is the query species name and tname is the name of the target/outgroup species. Names used for qname and tname must match names used in the phylogenetic tree.

Options

Option Description
-h, --help Show help message and exit.
-o FILE, --output FILE Output file. (default: stdout)
-t FLOAT, --threshold FLOAT Mapping threshold i.e., |elem| * threshold <= |mapped_elem|. Default = 0.0 -- equivalent to accepting a single-base overlap. On the other end of the spectrum, setting this value to 1 is equivalent to only accepting full-length overlaps. (default: 0.0)
-g GAP, --gap GAP Ignore elements with an insertion/deletion of this or bigger size. Ignore elements with an insertion/deletion of this or bigger size. Using the default value (-1) will allow gaps of any size. (default: -1)
-v {info,debug,silent}, --verbose {info,debug,silent} Verbosity level (default: info)
-d, --drop_split Follow the bnMapper convention of silently dropping elements that span multiple chains, rather than the liftOver mapping convention for split alignments: keep elements that span multiple chains and report the longest aligned segment. This is not recommended, as it may lead to spurious gain/loss predictions for orthologous elements that happen to be split across chains due to chromosomal rearrangements, etc... (default: False)
-i {BED,narrowPeak}, --in_format {BED,narrowPeak} Input file format. (default: BED)
-f, --full_labels Predict gain/loss events on the whole tree, not just branches leading to query and target species. (default: False)
-n, --no_prune Do not attempt to disambiguate the root state to resolve ambiguous gain/loss predictions. Instead, label affected features as 'ambiguous'. (default: False)
-p, --priority {gain,loss} When resolving ambiguous trees, prioritize sequence gain or sequence loss. This can be thought of as assigning a lower cost to sequence insertions relative to deletions, or vice-versa. When priority='gain', ambiguity is resolved by assigning 0 state to the root node, such that sequence presence on a descendant branch will be interpreted as a gain. When priority='loss', ambiguity is resolved by asssigning state 1 to the root node, such that sequence absence in a descendant node is interpreted as a sequence loss. (default: gain)

Output

Predictions are reported in tab-delimited format with the first four columns following the BED4 convention. The predicted evolutionary history (i.e., ortholog, gain in query, or loss in target) is reported in the "status" column. The final three columns contain the mapped location, in target coordinates, of mapped (ortholog) elements.

Column Description
chrom Chromosome on which the query element is located.
start Start position on query chromosome.
end End position on query chromosome.
name Element name or ID.
peak Peak location (narrowPeak input) or element midpoint (BED input)
status Predicted phylogenetic history: ortholog, gain_qname, loss_tname, or ambiguous, if --no_prune is used. If --full_labels is used, this may include additional loss/gain events on other branches, in a comma-delimited list format.
mapped chrom For mapped (ortholog) elements, the chromosome on which the mapped element is located, in target coordinates.
mapped start For mapped (ortholog) elements, the start position on the target chromosome on which the mapped element is located.
mapped end For mapped (ortholog) elements, the end position on the target chromosome on which the mapped element is located.
mapped_peak For mapped (ortholog) elements, the mapped peak position (narrowPeak input) or mapped element midpoint (BED input).

Citation

MapGL: Inferring evolutionary gain and loss of short genomic sequence features by phylogenetic maximum parsimony Adam G Diehl, Alan P Boyle bioRxiv 827907; doi: https://doi.org/10.1101/827907 https://www.biorxiv.org/content/10.1101/827907v1

Copyright 2018, Adam Diehl (adadiehl@umich.edu), Boyle Lab, University of Michigan

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

mapGL-1.3.0.tar.gz (20.6 kB view details)

Uploaded Source

Built Distribution

mapGL-1.3.0-py3-none-any.whl (19.5 kB view details)

Uploaded Python 3

File details

Details for the file mapGL-1.3.0.tar.gz.

File metadata

  • Download URL: mapGL-1.3.0.tar.gz
  • Upload date:
  • Size: 20.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0.post20200712 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.6

File hashes

Hashes for mapGL-1.3.0.tar.gz
Algorithm Hash digest
SHA256 fc264860f801e75dd99589146a2f6bce9baeeaf7f32d04cf0de580fac4bb9260
MD5 1dbbae0f1960847e57941b09e5a507d8
BLAKE2b-256 05f1abe707f15dcd363d80ac7478745ecb147ed76a159e8d364bc45abbfa45c9

See more details on using hashes here.

File details

Details for the file mapGL-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: mapGL-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 19.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0.post20200712 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.6

File hashes

Hashes for mapGL-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5bfa46b7910d1871281f8a21d81f2e7e3e91b150dd25dc05bfce7e30b5331d78
MD5 73f89516ce2d8de1d113c37a4aed5df0
BLAKE2b-256 51c402ce898701b545cdec0cc034919933dd901a5969316a75468dbe080c987e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page