strainchoosr
:palm_tree: Choose the most diverse possible set of strains from a phylogenetic tree
Science Score: 23.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 1 DOI reference(s) in README -
✓Academic publication links
Links to: plos.org -
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (15.9%) to scientific vocabulary
Last synced: 11 months ago
·
JSON representation
Repository
:palm_tree: Choose the most diverse possible set of strains from a phylogenetic tree
Basic Info
- Host: GitHub
- Owner: OLC-Bioinformatics
- License: mit
- Language: Python
- Default Branch: master
- Homepage: https://strainchoosr.readthedocs.io
- Size: 60.5 KB
Statistics
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 2
- Releases: 0
Created over 7 years ago
· Last pushed about 2 years ago
Metadata Files
Readme
License
README.rst
|Travis| |Coverage| |PyPI| |ReadTheDocs|
StrainChoosr
============
``StrainChoosr`` examines phylogenetic trees and will give you the X strains that represent the most diversity
within your tree. Given today's deluge of sequencing data, picking strains to do more detailed analysis
on can be difficult. Using this tool ensures you'll have the maximum amount of diversity possible in your
scaled down set of sequences. The algorithm behind it is described in Pardi2005_ and Steel2005_ so please be sure to cite them if you use
``StrainChoosr``.
Installation
============
``StrainChoosr`` lives on PyPi, so you can install via pip/pip3:
``pip install strainchoosr``
Alternatively, you can install the latest version from git. Note that there may be breaking changes
pushed to the repository, so this isn't necessarily advised.
``pip install git+https://github.com/lowandrew/StrainChoosr.git``
Quickstart
==========
To use ``StrainChoosr``, all you need is a newick-formatted_ tree file.
To pick the 5 most diverse strains from a tree, type the following on the command line:
``strainchoosr --treefile /path/to/tree.nwk --number 5``
This will print the names of the 5 most diverse strains in your tree to the terminal, as well as
create a file called `strainchoosr_output.html` in your current working directory that lets you visualize
the output in any web browser.
To do the same within python::
from strainchoosr import strainchoosr
strainchoosr.run_strainchoosr(treefile='/path/to/tree.nwk', number_representatives=[5])
In addition to printing the strains to terminal, ``run_strainchoosr`` will return a dictionary where keys are
the number of representatives and values are lists of the strains selected for that
number of representatives.
Alternatively, if all you want to get is the list of strains and not generated html reports::
from strainchoosr import strainchoosr
import ete3
tree = ete3.Tree('path/to/treefile.nwk')
diverse_strains = strainchoosr.pd_greedy(tree=tree, number_tips=5, starting_strains=[])
This will get you a list of ete3.TreeNode objects that represent the 5 most diverse possible strains. You can then use
``strainchoosr.get_leaf_names_from_nodes(diverse_strains)`` to get a list of names.
Complete documentation on the ``strainchoosr`` API can be found at https://strainchoosr.readthedocs.io/api.html.
Issues and Pull Requests
========================
If you have any problems or want a feature implemented, please feel free to open an issue_. Similarly, if you want to
add a feature or otherwise improve things, feel free to open a pull request.
.. _Pardi2005: https://journals.plos.org/plosgenetics/article?id=10.1371/journal.pgen.0010071
.. _Steel2005: https://academic.oup.com/sysbio/article/54/4/527/2842877
.. _newick-formatted: https://en.wikipedia.org/wiki/Newick_format)
.. _issue: https://github.com/lowandrew/StrainChoosr/issues
.. |Travis| image:: https://travis-ci.org/lowandrew/StrainChoosr.svg?master
:target: https://travis-ci.org/lowandrew/StrainChoosr
.. |Coverage| image:: https://codecov.io/gh/lowandrew/StrainChoosr/branch/master/graph/badge.svg
:target: https://codecov.io/gh/lowandrew/StrainChoosr
.. |PyPI| image:: https://badge.fury.io/py/strainchoosr.svg
:target: https://badge.fury.io/py/strainchoosr
.. |ReadTheDocs| image:: https://readthedocs.org/projects/strainchoosr/badge/?version=latest
:target: https://strainchoosr.readthedocs.io/?badge=latest
:alt: Documentation Status
Owner
- Name: OLC-Bioinformatics
- Login: OLC-Bioinformatics
- Kind: organization
- Repositories: 26
- Profile: https://github.com/OLC-Bioinformatics
GitHub Events
Total
Last Year
Committers
Last synced: almost 3 years ago
Top Committers
| Name | Commits | |
|---|---|---|
| lowandrew | a****w@c****a | 48 |
Committer Domains (Top 20 + Academic)
canada.ca: 1
Issues and Pull Requests
Last synced: 11 months ago
All Time
- Total issues: 3
- Total pull requests: 1
- Average time to close issues: 4 days
- Average time to close pull requests: N/A
- Total issue authors: 2
- Total pull request authors: 1
- Average comments per issue: 0.67
- Average comments per pull request: 0.0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 1
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- lowandrew (2)
- duceppemo (1)
Pull Request Authors
- dependabot[bot] (1)
Top Labels
Issue Labels
enhancement (1)
bug (1)
Pull Request Labels
dependencies (1)
Packages
- Total packages: 1
-
Total downloads:
- pypi 14 last-month
- Total dependent packages: 0
- Total dependent repositories: 1
- Total versions: 8
- Total maintainers: 3
pypi.org: strainchoosr
This package was originally created by Andrew Low. Now maintained by Adam Koziol.
- Homepage: https://github.com/OLC-Bioinformatics/StrainChoosr
- Documentation: https://strainchoosr.readthedocs.io/
- License: mit
-
Latest release: 0.1.6
published about 2 years ago
Rankings
Dependent packages count: 10.1%
Dependent repos count: 21.6%
Forks count: 29.8%
Average: 37.7%
Stargazers count: 38.8%
Downloads: 88.2%
Maintainers (3)
Last synced:
11 months ago
Dependencies
requirements.txt
pypi
- PyQt5 ==5.11.3
- PyQt5-sip ==4.19.13
- atomicwrites ==1.3.0
- attrs ==18.2.0
- ete3 ==3.1.1
- more-itertools ==5.0.0
- pathlib2 ==2.3.3
- pluggy ==0.8.1
- py ==1.7.0
- pytest ==4.2.0
- six ==1.12.0
setup.py
pypi
- PyQt5 ==5.11.3
- ete3 *
- pytest *