Skip to main content

Ancestral Cost

Ancestral Cost is a tool for validating multiple sequence alignments prior to performing ancestral sequence reconstruction.

It checks for each position in a given ancestor that the presence of ancestral content implied to be there by a given alignment and tree is not substantially less parsimonious then the alternative of not having ancestral content there.

Installation

Using Pip

  $ pip install ancestralcost

Manual

  $ git clone https://github.com/gabefoley/ancestralcost
  $ cd ancestralcost
  $ python setup.py install

Usage

$ python -m ancestralcost -a <alignment> -t <tree>

Workflow

Before performing ancestral sequence reconstruction (ASR) we can recognise that a multiple sequence alignment implies that every aligned column should have a common ancestor.

Ancestral Cost checks that for every ancestral position that is implied by a given alignment and tree the parsimony cost of having ancestral content there isn't far greater than not having ancestral content.

Ancestral Cost is intended to be run before ASR in order to validate alignments and trees. It highlights positions that may be erroneously aligned.

CYP2U1 Example

If an alignment suggests two positions should be aligned but they are only present in distant clades then they shouldn't be one column but split into two columns. Failing to do this will influence ancestors that are predicted at these positions.

First Ancestral Cost calculates all of the positions required to be there. In the example this is done by simply looking at the highest ancestral position implied by each column. From the example, N3 is the only ancestral node that has content at each of the four alignment positions, all of the other nodes have content at three alignment positions.

It then calculates the parsimony cost for each implied position and reports on the cost of content being present and cost of content being absent.

This allows users to filter on particularly informative sites or particularly large discrepencies in parsimony scores.

The intention is to look at the positions identified by Ancestral Cost and potentially amend the multiple sequence alignment as a result.

All commands

-a Path to alignment
-t Path to phylogenetic tree
-n Node to return cost for (default is root)
-p Just return the positions required to be there
-f Return all ancestors as a FASTA file
-to Write out the ancestor tree

Metadata

Release files for ancestralcost 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ancestralcost 1.0.1
File Size Uploaded Provenance Actions
ancestralcost-1.0.1.tar.gz 29.8 kB Without provenance Details for ancestralcost-1.0.1.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for ancestralcost 1.0.1
File Interpreter ABI Platform Actions
ancestralcost-1.0.1-py3.8.egg Legacy Egg format - - Details for ancestralcost-1.0.1-py3.8.egg
ancestralcost-1.0.1-py3-none-any.whl Python 3 none any Details for ancestralcost-1.0.1-py3-none-any.whl

Total release size: 130.5 kB

Release files / ancestralcost-1.0.1.tar.gz

Download URL ancestralcost-1.0.1.tar.gz
Size 29.8 kB
Tags Source
SHA-256 checksum
How to use checksums
ca69fdae28a2d5ef7c813fb3f5f3f20955f5f9fb0060bcfe29897d708b9bd057
BLAKE2b-256 checksum
How to use checksums
51fadcb6a06df36e4bd01ecc8f54edf68d0992bba4578591c7ec23dac0ada2c7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.7

Release files / ancestralcost-1.0.1-py3.8.egg

Download URL ancestralcost-1.0.1-py3.8.egg
Size 56.2 kB
Tags Egg
SHA-256 checksum
How to use checksums
eb783cf9958cca8e41fcf0b54816fde6c910909597451492d4d4b5b21d11ed4f
BLAKE2b-256 checksum
How to use checksums
616b7471de2e93e730d3c9a543c7f6b84f3ce8dee5c2808e26b04638eb6d3aaf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.7

Release files / ancestralcost-1.0.1-py3-none-any.whl

Download URL ancestralcost-1.0.1-py3-none-any.whl
Size 44.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cba3ec4a24ccbacf068410ebf47b416bcd52f5db188609d6294699a9093bfe08
BLAKE2b-256 checksum
How to use checksums
0dc966f8630cca9294d1b127d12bf042d6f1d8b0bec25b3dfb25b5d3fea34b20
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.7

Security for ancestralcost 1.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.0.1 This release

3 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page