🐍 pyaging: a Python-based compendium of GPU-optimized aging clocks
pyaging is a cutting-edge Python package designed for the longevity research community, offering a comprehensive suite of GPU-optimized biological aging clocks.
Installation - Clock gallery - Search, cite, get metadata and clock parameters - Illumina Human Methylation Arrays - Illumina Mammalian Methylation Arrays - RRBS DNA methylation - Bulk histone mark ChIP-Seq - Bulk ATAC-Seq - Bulk RNA-Seq - Blood chemistry - CpGPTGrimAge3 - API Reference
With a growing number of aging clocks and biomarkers of aging, comparing and analyzing them can be challenging. pyaging simplifies this process, allowing researchers to input various molecular layers (DNA methylation, histone ChIP-Seq, ATAC-seq, transcriptomics, etc.) and quickly analyze them using multiple aging clocks, thanks to its GPU-backed infrastructure. This makes it an ideal tool for large datasets and multi-layered analysis.
📦 Installation
pyaging requires Python 3.11 or newer and is available on PyPI:
pip install pyaging
To use the histone mark clocks, install the optional pyBigWig dependency as well (not supported on Windows):
pip install pyaging[histone]
🚀 Quickstart
import pandas as pd
import pyaging as pya
pya.data.download_example_data("GSE139307")
df = pd.read_pickle("pyaging_data/GSE139307.pkl")
adata = pya.pp.df_to_adata(df)
pya.pred.predict_age(adata, ["Horvath2013", "AltumAge", "DunedinPACE"])
adata.obs.head()
Clock weights are downloaded on demand from per-clock repositories under the pyaging Hugging Face organization (example data comes from lucascamillomd/pyaging-data). Set the PYAGING_DATA_REVISION environment variable to a release tag (e.g. v0.3.1) to pin downloads to a specific data revision for reproducibility; it defaults to main, the live data release.
❓ Can't find an aging clock?
If you have recently developed an aging clock and would like it to be integrated into pyaging, please email me. I aim to incorporate it within one to two weeks! I'm also happy to adapt to any licensing terms for commercial entities.
💬 Community Discussion
For coding-related queries, feedback, and discussions, please visit our GitHub Issues page.
📝 Changelog
Notable changes, including breaking ones, are recorded in CHANGELOG.md. Per-version release artifacts and the commit log are on the GitHub Releases page.
📖 Citation
To cite pyaging, please use the following:
@article{de_Lima_Camillo_pyaging,
author = {de Lima Camillo, Lucas Paulo},
title = "{pyaging: a Python-based compendium of GPU-optimized aging clocks}",
journal = {Bioinformatics},
pages = {btae200},
year = {2024},
month = {04},
issn = {1367-4811},
doi = {10.1093/bioinformatics/btae200},
url = {https://doi.org/10.1093/bioinformatics/btae200},
eprint = {https://academic.oup.com/bioinformatics/advance-article-pdf/doi/10.1093/bioinformatics/btae200/57218155/btae200.pdf},
}
Metadata
Release files for pyaging 0.5.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pyaging-0.5.2.tar.gz | 66.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyaging-0.5.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 140.7 kB
Release files / pyaging-0.5.2.tar.gz
| Download URL | pyaging-0.5.2.tar.gz |
|---|---|
| Size | 66.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8a4a4bc91df4b57b60b9eb5d39932e6209851db8b94def5d07afdc010b862c37
|
|
BLAKE2b-256 checksum How to use checksums |
d44cb044c07011beb562633223dcf569f0b413858d2c72aec0b93c7dbcbf5a5f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 27, 2026.
Transparency logRelease files / pyaging-0.5.2-py3-none-any.whl
| Download URL | pyaging-0.5.2-py3-none-any.whl |
|---|---|
| Size | 74.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c64fccdbe2d0be21ac91ec7ea39a9e95877efb46bf2eeb1b976d1c73df7f1b67
|
|
BLAKE2b-256 checksum How to use checksums |
6d975766b260c765552f7d116c9a35c61e7676ade927a0494e7d113c3e629471
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 27, 2026.
Transparency log