===========
TAXTASTIC
===========
Taxtastic is a python package used to build and maintain reference
packages, i.e. collections of reference trees, reference alignments,
profiles, and associated taxonomic information.
.. image:: https://travis-ci.org/fhcrc/taxtastic.svg?branch=master
:target: https://travis-ci.org/fhcrc/taxtastic
* quickstart_
* `full documentation`_
A script named ``taxit`` provides a command line interface::
% taxit -h
usage: taxit [-h] [-V] [-v] [-q]
{help,add_nodes,add_to_taxtable,check,composition,create,extract_nodes,findcompany,get_descendants,get_lineage,info,lineage_table,lonelynodes,namelookup,new_database,refpkg_intersection,reroot,rollback,rollforward,rp,strip,taxids,taxtable,update,update_taxids}
...
Creation, validation, and modification of reference packages for use with
`pplacer` and related software.
positional arguments:
{help,add_nodes,add_to_taxtable,check,composition,create,extract_nodes,findcompany,get_descendants,get_lineage,info,lineage_table,lonelynodes,namelookup,new_database,refpkg_intersection,reroot,rollback,rollforward,rp,strip,taxids,taxtable,update,update_taxids}
help Detailed help for actions using `help <action>`
add_nodes Add nodes and names to a database
add_to_taxtable Add nodes to an existing taxtable csv
check Validate a reference package
composition Show taxonomic composition of a reference package
create Create a reference package
extract_nodes Extract nodes from a given source in yaml format
findcompany Find company for lonely nodes
get_descendants Returns given taxids including descendant taxids
get_lineage Calculate the taxonomic lineage of a taxid
info Show information about reference packages.
lineage_table Create a table of lineages as taxonimic names for a
collection of sequences
lonelynodes Extracts tax ids of all lonely nodes in a taxtable
namelookup Find primary name and tax_id from taxonomic names
new_database Download NCBI taxonomy and create a database
refpkg_intersection
Find the intersection of a taxtable and a refpkg's
taxonomy.
reroot Taxonomically reroots a reference package
rollback Undo an operation performed on a refpkg
rollforward Restore a change to a refpkg immediately after being
reverted
rp Resolve path; get the path to a file in the reference
package
strip Remove rollback and rollforward information from a
refpkg
taxids Convert a list of taxonomic names into a recursive
list of species
taxtable Create a tabular representation of taxonomic lineages
update Add or modify files or metadata in a refpkg
update_taxids Update obsolete tax_ids
options:
-h, --help show this help message and exit
-V, --version Print the version number and exit
-v, --verbose Increase verbosity of screen output (eg, -v is
verbose, -vv more so)
-q, --quiet Suppress output
Installation
============
``taxtastic`` requires Python 3.8+. The simplest method of installing
is using `pip <http://pip-installer.org>`_::
pip install taxtastic
We strongly recommend installation into a virtualenv. Instructions for
installing the ``taxtastic`` package and the ``taxit`` command line
entry point in a virtualenv are as follows::
python3 -m venv taxtastic-env
source taxtastic-env/bin/activate
pip install -U pip
pip install taxtastic
If you prefer to install from the git repository::
git clone https://github.com/fhcrc/taxtastic.git
cd taxtastic
python3 -m venv taxtastic-env
source taxtastic-env/bin/activate
pip install .
Finally, ``taxit`` can be run from a Docker image hosted in the GitHub
Container Registry. For example, to create a new sqlite database::
docker run --rm -it -v $(pwd):/opt/run --platform=linux/amd64 ghcr.io/fhcrc/taxtastic:latest taxit new_database ncbi_taxonomy.db
Note that initial database creation (at least on MacOS using amd64
emulation) is very slow using Docker and is not recommended.
A note on databases
===================
This project supports both sqlite3 and postgresql as database
backends. For most applications, we recommend sqlite3: some operations
(particularly initial database creation) are much faster using sqlite3.
sqlite3
-------
Taxtastic uses recursive common table expressions to query the
taxonomy database, which requires that the Python ``sqlite3`` module
is built against sqlite3 library version of 3.8.3 or higher
(http://www.sqlite.org/releaselog/3_8_3.html). You can check the
version like this::
python3 -c 'import sqlite3; print(sqlite3.sqlite_version)'
postgresql
----------
Despite some recent optimizations as of version v0.10 (in which
indexes and constraints are dropped before creating the taxonomy
database), operations in Postgres are somewhat slower. Note that the
default Postgres configuration on MacOS is likely to be quite resource
constrained; consider tuning your database configuration by consulting
a site such as PGTune (https://pgtune.leopard.in.ua).
.. Targets ..
.. _quickstart: https://fhcrc.github.io/taxtastic/quickstart.html
.. _full documentation: https://fhcrc.github.io/taxtastic/index.html
Raw data
{
"_id": null,
"home_page": "https://github.com/fhcrc/taxtastic",
"name": "taxtastic",
"maintainer": "Chris Rosenthal",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "crosenth@uw.edu",
"keywords": "",
"author": "Noah Hoffman",
"author_email": "ngh2@uw.edu",
"download_url": "https://files.pythonhosted.org/packages/7f/8a/49c16e64bc69a043d393c648336985a06c4b5dc1ac18598c32f0c8a35553/taxtastic-0.10.0.tar.gz",
"platform": null,
"description": "===========\n TAXTASTIC\n===========\n\nTaxtastic is a python package used to build and maintain reference\npackages, i.e. collections of reference trees, reference alignments,\nprofiles, and associated taxonomic information.\n\n.. image:: https://travis-ci.org/fhcrc/taxtastic.svg?branch=master\n :target: https://travis-ci.org/fhcrc/taxtastic\n\n* quickstart_\n* `full documentation`_\n\nA script named ``taxit`` provides a command line interface::\n\n % taxit -h\n usage: taxit [-h] [-V] [-v] [-q]\n {help,add_nodes,add_to_taxtable,check,composition,create,extract_nodes,findcompany,get_descendants,get_lineage,info,lineage_table,lonelynodes,namelookup,new_database,refpkg_intersection,reroot,rollback,rollforward,rp,strip,taxids,taxtable,update,update_taxids}\n ...\n\n Creation, validation, and modification of reference packages for use with\n `pplacer` and related software.\n\n positional arguments:\n {help,add_nodes,add_to_taxtable,check,composition,create,extract_nodes,findcompany,get_descendants,get_lineage,info,lineage_table,lonelynodes,namelookup,new_database,refpkg_intersection,reroot,rollback,rollforward,rp,strip,taxids,taxtable,update,update_taxids}\n help Detailed help for actions using `help <action>`\n add_nodes Add nodes and names to a database\n add_to_taxtable Add nodes to an existing taxtable csv\n check Validate a reference package\n composition Show taxonomic composition of a reference package\n create Create a reference package\n extract_nodes Extract nodes from a given source in yaml format\n findcompany Find company for lonely nodes\n get_descendants Returns given taxids including descendant taxids\n get_lineage Calculate the taxonomic lineage of a taxid\n info Show information about reference packages.\n lineage_table Create a table of lineages as taxonimic names for a\n collection of sequences\n lonelynodes Extracts tax ids of all lonely nodes in a taxtable\n namelookup Find primary name and tax_id from taxonomic names\n new_database Download NCBI taxonomy and create a database\n refpkg_intersection\n Find the intersection of a taxtable and a refpkg's\n taxonomy.\n reroot Taxonomically reroots a reference package\n rollback Undo an operation performed on a refpkg\n rollforward Restore a change to a refpkg immediately after being\n reverted\n rp Resolve path; get the path to a file in the reference\n package\n strip Remove rollback and rollforward information from a\n refpkg\n taxids Convert a list of taxonomic names into a recursive\n list of species\n taxtable Create a tabular representation of taxonomic lineages\n update Add or modify files or metadata in a refpkg\n update_taxids Update obsolete tax_ids\n\n options:\n -h, --help show this help message and exit\n -V, --version Print the version number and exit\n -v, --verbose Increase verbosity of screen output (eg, -v is\n verbose, -vv more so)\n -q, --quiet Suppress output\n\nInstallation\n============\n\n``taxtastic`` requires Python 3.8+. The simplest method of installing\nis using `pip <http://pip-installer.org>`_::\n\n pip install taxtastic\n\nWe strongly recommend installation into a virtualenv. Instructions for\ninstalling the ``taxtastic`` package and the ``taxit`` command line\nentry point in a virtualenv are as follows::\n\n python3 -m venv taxtastic-env\n source taxtastic-env/bin/activate\n pip install -U pip\n pip install taxtastic\n\nIf you prefer to install from the git repository::\n\n git clone https://github.com/fhcrc/taxtastic.git\n cd taxtastic\n python3 -m venv taxtastic-env\n source taxtastic-env/bin/activate\n pip install .\n\nFinally, ``taxit`` can be run from a Docker image hosted in the GitHub\nContainer Registry. For example, to create a new sqlite database::\n\n docker run --rm -it -v $(pwd):/opt/run --platform=linux/amd64 ghcr.io/fhcrc/taxtastic:latest taxit new_database ncbi_taxonomy.db\n\nNote that initial database creation (at least on MacOS using amd64\nemulation) is very slow using Docker and is not recommended.\n\nA note on databases\n===================\n\nThis project supports both sqlite3 and postgresql as database\nbackends. For most applications, we recommend sqlite3: some operations\n(particularly initial database creation) are much faster using sqlite3.\n\nsqlite3\n-------\n\nTaxtastic uses recursive common table expressions to query the\ntaxonomy database, which requires that the Python ``sqlite3`` module\nis built against sqlite3 library version of 3.8.3 or higher\n(http://www.sqlite.org/releaselog/3_8_3.html). You can check the\nversion like this::\n\n python3 -c 'import sqlite3; print(sqlite3.sqlite_version)'\n\npostgresql\n----------\n\nDespite some recent optimizations as of version v0.10 (in which\nindexes and constraints are dropped before creating the taxonomy\ndatabase), operations in Postgres are somewhat slower. Note that the\ndefault Postgres configuration on MacOS is likely to be quite resource\nconstrained; consider tuning your database configuration by consulting\na site such as PGTune (https://pgtune.leopard.in.ua).\n\n.. Targets ..\n.. _quickstart: https://fhcrc.github.io/taxtastic/quickstart.html\n.. _full documentation: https://fhcrc.github.io/taxtastic/index.html\n",
"bugtrack_url": null,
"license": "GPL",
"summary": "Tools for taxonomic naming and annotation",
"version": "0.10.0",
"project_urls": {
"Download": "https://github.com/fhcrc/taxtastic",
"Homepage": "https://github.com/fhcrc/taxtastic"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c2587887a54b76a4049739d65251b06c3fc653d882e099ec5142485421181e9f",
"md5": "38fc93f7fba525943a6b3983e919eced",
"sha256": "81c255c362dc107534839c7c0379ca9cd6aa66ff7c63673d636b8aab1e101093"
},
"downloads": -1,
"filename": "taxtastic-0.10.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "38fc93f7fba525943a6b3983e919eced",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 91348,
"upload_time": "2023-08-25T21:38:42",
"upload_time_iso_8601": "2023-08-25T21:38:42.427166Z",
"url": "https://files.pythonhosted.org/packages/c2/58/7887a54b76a4049739d65251b06c3fc653d882e099ec5142485421181e9f/taxtastic-0.10.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7f8a49c16e64bc69a043d393c648336985a06c4b5dc1ac18598c32f0c8a35553",
"md5": "a0800edb53d54b4f14859a365afb8263",
"sha256": "32db30aa2e499fbae913b991cd087fa69684ac4ff934b957c30b6085866f1748"
},
"downloads": -1,
"filename": "taxtastic-0.10.0.tar.gz",
"has_sig": false,
"md5_digest": "a0800edb53d54b4f14859a365afb8263",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 85829,
"upload_time": "2023-08-25T21:38:44",
"upload_time_iso_8601": "2023-08-25T21:38:44.130481Z",
"url": "https://files.pythonhosted.org/packages/7f/8a/49c16e64bc69a043d393c648336985a06c4b5dc1ac18598c32f0c8a35553/taxtastic-0.10.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-08-25 21:38:44",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "fhcrc",
"github_project": "taxtastic",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"tox": true,
"lcname": "taxtastic"
}