Skip to main content

Python API that provides simple tools for doing phylogenetics.

Project description

# Python API and command-line for doing phylogenetics

Test out the API in notebooks -- click on the badge:

[![Binder](http://mybinder.org/badge.svg)](http://mybinder.org/repo/Zsailer/phylogenetics)

This is the master repository for the `phylogenetics` Python package. This package includes a lightweight, simple-to-use API for managing and processing phylogenetic data. Many of the modules included in this package originated from Dr. [Mike Harms'](https://github.com/harmsm) `phylo_tools` and have been converted to API's. Read the Wiki to learn more about the internal structure.

This package also contains a series of command-line tools that are installed globally and do many vanilla tasks common to phylogenetics projects. While I recommend using the API in an interactive environment, like IPython or Jupyter notebooks, it is sometimes faster to use these scripts. Note that there are example notebooks included in the `examples` folder.

The foundation of this API are the `Homolog` and `HomologSet` objects. These objects offer simple data-structures that manages the metadata for a set of sequences in a phylogenetics/reconstruction project. These objects are easily queried, updated, and saved into many formats (i.e. fasta, csv, phylip, pickle, and json).

An metadata inside a homolog (__dict__ attribute) might look might look like this:

```python
>>> print(homolog.__dict__)

{
"id" : "XX00000000",
"species" : "S100A5",
"organism" : "human",
"length" : 180,
"sequence" : "ASKFAFELGSKADGKASEKA...",
"latest_align" : "----ASK---F-AFELG--SKA---DGKASEK-A---...",
"align_1" : "--------------ASK-------F-AFELG-----SKA--DFLASEK--A--...",

.
.
.
}

>>> homolog.fasta()

>XX00000000
ASKFAFELGSKADGKASEKA...


>>> homolog.write("homolog.fasta", format="fasta") # writes to file "homolog.fasta"
```

## Installation

This package is on Pypi, so this works for installation:
```
pip install phylogenetics
```
however, it will likely be trailing development as I move quickly on improving this tool.

I suggest installing from source until I get a fully stable version up and running.

Clone this repo locally:
```
git clone https://github.com/Zsailer/phylogenetics
```

Navigate to this directory, and install this python package with

```
python setup.py install
```

If you'd like to work in development mode,

```
pip install -e .
```

**NOTE:** Many of modules in this API require other software packages to work.

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

phylogenetics-0.2.1.tar.gz (16.6 kB view details)

Uploaded Source

Built Distribution

phylogenetics-0.2.1-py2.py3-none-any.whl (23.8 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file phylogenetics-0.2.1.tar.gz.

File metadata

File hashes

Hashes for phylogenetics-0.2.1.tar.gz
Algorithm Hash digest
SHA256 3ba006fa92923e856273077e35604abd9d44e627af2386b94dd4cf0514404aeb
MD5 2bb6e8ed7d1a2a95581cd9aabf94af3d
BLAKE2b-256 131c4447a8cdae50df1a63f7a2fbc2bbd38dbc4d527843817eab1385a878f8bd

See more details on using hashes here.

Provenance

File details

Details for the file phylogenetics-0.2.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for phylogenetics-0.2.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 21d8be3b158a5f13696f9c2769467a3f04019337e1d50e78cdb472562d19c110
MD5 4e73fe9834e31b107be428719c23b5aa
BLAKE2b-256 90aae57105f9db88d747bcad9bf1e05dc70cb7d1f8ddbbb896a23f6508570246

See more details on using hashes here.

Provenance

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