# tsdate <img align="right" width="145" height="90" src="https://github.com/tskit-dev/tsdate/blob/main/docs/tsdate_logo.svg">
[![CircleCI](https://circleci.com/gh/tskit-dev/tsdate.svg?style=svg)](https://circleci.com/gh/tskit-dev/tsdate)
[![codecov](https://codecov.io/gh/tskit-dev/tsdate/branch/master/graph/badge.svg)](https://codecov.io/gh/tskit-dev/tsdate)
``tsdate`` is a scalable method for estimating the age of ancestral nodes in a
[tree sequence](https://tskit.dev/tutorials/what_is.html). The method uses a coalescent prior and updates node times on the basis of the number of mutations along each edge of the tree sequence (i.e. using the "molecular clock").
The method is frequently combined with the [tsinfer](https://tsinfer.readthedocs.io/en/latest/) algorithm, which efficiently infers tree sequence *topologies* from large genetic datasets.
Please refer to the [documentation](https://tskit.dev/tsdate/docs/latest/) for information on installing and using the software.
The algorithms for the original `inside_outside` and `maximization` [methods](https://tskit.dev/tsdate/docs/latest/methods.html) are described [in this Science paper](https://www.science.org/doi/10.1126/science.abi8264) (citation below, preprint [here](https://www.biorxiv.org/content/10.1101/2021.02.16.431497v2), evaluations in [another repository](https://github.com/awohns/unified_genealogy_paper)). The new `variational_gamma` method, the default from version 0.2 onwards, has not yet been described in print. For the moment, please cite this github repository if you need a citable reference.
The citation to use for the original tsdate algorithms is:
> Anthony Wilder Wohns, Yan Wong, Ben Jeffery, Ali Akbari, Swapan Mallick, Ron Pinhasi, Nick Patterson, David Reich, Jerome Kelleher, and Gil McVean (2022) _A unified genealogy of modern and ancient genomes_. Science **375**: eabi8264; doi: https://doi.org/10.1126/science.abi8264
Raw data
{
"_id": null,
"home_page": "http://pypi.python.org/pypi/tsdate",
"name": "tsdate",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "population genetics, tree sequence, ancestral recombination graph, evolutionary tree, inference, dating, tsdate",
"author": "Tskit Developers",
"author_email": "admin@tskit.dev",
"download_url": "https://files.pythonhosted.org/packages/17/8c/06cd44cbf9676f5499353a6eadfd79c7257ad2d7f87090d51ab3b1de1fcd/tsdate-0.2.1.tar.gz",
"platform": "POSIX",
"description": "# tsdate <img align=\"right\" width=\"145\" height=\"90\" src=\"https://github.com/tskit-dev/tsdate/blob/main/docs/tsdate_logo.svg\">\n\n[![CircleCI](https://circleci.com/gh/tskit-dev/tsdate.svg?style=svg)](https://circleci.com/gh/tskit-dev/tsdate)\n[![codecov](https://codecov.io/gh/tskit-dev/tsdate/branch/master/graph/badge.svg)](https://codecov.io/gh/tskit-dev/tsdate)\n\n``tsdate`` is a scalable method for estimating the age of ancestral nodes in a \n[tree sequence](https://tskit.dev/tutorials/what_is.html). The method uses a coalescent prior and updates node times on the basis of the number of mutations along each edge of the tree sequence (i.e. using the \"molecular clock\").\n\nThe method is frequently combined with the [tsinfer](https://tsinfer.readthedocs.io/en/latest/) algorithm, which efficiently infers tree sequence *topologies* from large genetic datasets.\n\nPlease refer to the [documentation](https://tskit.dev/tsdate/docs/latest/) for information on installing and using the software.\n\nThe algorithms for the original `inside_outside` and `maximization` [methods](https://tskit.dev/tsdate/docs/latest/methods.html) are described [in this Science paper](https://www.science.org/doi/10.1126/science.abi8264) (citation below, preprint [here](https://www.biorxiv.org/content/10.1101/2021.02.16.431497v2), evaluations in [another repository](https://github.com/awohns/unified_genealogy_paper)). The new `variational_gamma` method, the default from version 0.2 onwards, has not yet been described in print. For the moment, please cite this github repository if you need a citable reference.\n\nThe citation to use for the original tsdate algorithms is:\n\n> Anthony Wilder Wohns, Yan Wong, Ben Jeffery, Ali Akbari, Swapan Mallick, Ron Pinhasi, Nick Patterson, David Reich, Jerome Kelleher, and Gil McVean (2022) _A unified genealogy of modern and ancient genomes_. Science **375**: eabi8264; doi: https://doi.org/10.1126/science.abi8264\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Infer node ages from a tree sequence topology.",
"version": "0.2.1",
"project_urls": {
"Bug Tracker": "https://github.com/tskit-dev/tsdate/issues",
"Changelog": "https://github.com/tskit-dev/tsdate/blob/main/CHANGELOG.rst",
"Documentation": "https://tskit.dev/tsdate/docs/",
"GitHub": "https://github.com/tskit-dev/tsdate",
"Homepage": "http://pypi.python.org/pypi/tsdate"
},
"split_keywords": [
"population genetics",
" tree sequence",
" ancestral recombination graph",
" evolutionary tree",
" inference",
" dating",
" tsdate"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "180ae37c8495af13f81d7f81bb1de408a49bae3c8aafbf14042c5a1c210896b6",
"md5": "3e72ee1390b947840f6f4dcf83841847",
"sha256": "eacecc473e7ed49006e3395304c2e23efd096c6e8eff29e95f0a6cf5a1ab044a"
},
"downloads": -1,
"filename": "tsdate-0.2.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "3e72ee1390b947840f6f4dcf83841847",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 96543,
"upload_time": "2024-07-31T10:55:56",
"upload_time_iso_8601": "2024-07-31T10:55:56.238283Z",
"url": "https://files.pythonhosted.org/packages/18/0a/e37c8495af13f81d7f81bb1de408a49bae3c8aafbf14042c5a1c210896b6/tsdate-0.2.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "178c06cd44cbf9676f5499353a6eadfd79c7257ad2d7f87090d51ab3b1de1fcd",
"md5": "be3dc7861a7ba15058e75b4561b2cf8d",
"sha256": "fd930491a96867c474470a9090ca6b2c9559837ff59e94488f99cc14f2612767"
},
"downloads": -1,
"filename": "tsdate-0.2.1.tar.gz",
"has_sig": false,
"md5_digest": "be3dc7861a7ba15058e75b4561b2cf8d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 202169,
"upload_time": "2024-07-31T10:55:58",
"upload_time_iso_8601": "2024-07-31T10:55:58.007962Z",
"url": "https://files.pythonhosted.org/packages/17/8c/06cd44cbf9676f5499353a6eadfd79c7257ad2d7f87090d51ab3b1de1fcd/tsdate-0.2.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-07-31 10:55:58",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "tskit-dev",
"github_project": "tsdate",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"circle": true,
"requirements": [
{
"name": "tskit",
"specs": [
[
">=",
"0.5.8"
]
]
},
{
"name": "tsinfer",
"specs": [
[
">=",
"0.3.0"
]
]
},
{
"name": "ruff",
"specs": []
},
{
"name": "numpy",
"specs": []
},
{
"name": "tqdm",
"specs": []
},
{
"name": "daiquiri",
"specs": []
},
{
"name": "msprime",
"specs": [
[
">=",
"1.3.2"
]
]
},
{
"name": "scipy",
"specs": [
[
">=",
"1.13.0"
]
]
},
{
"name": "numba",
"specs": [
[
">=",
"0.58.1"
]
]
},
{
"name": "appdirs",
"specs": []
},
{
"name": "pre-commit",
"specs": []
},
{
"name": "pytest",
"specs": []
},
{
"name": "pytest-xdist",
"specs": []
},
{
"name": "pytest-cov",
"specs": []
},
{
"name": "mpmath",
"specs": []
},
{
"name": "numdifftools",
"specs": []
},
{
"name": "setuptools",
"specs": [
[
">=",
"45"
]
]
},
{
"name": "matplotlib",
"specs": []
},
{
"name": "twine",
"specs": []
},
{
"name": "build",
"specs": []
}
],
"lcname": "tsdate"
}