Skip to main content

A Python package for tracking neurons across days

Project description

pyDANT: A Python toolbox for Density-based Across-day Neuron Tracking

View pyDANT on GitHub Documentation Status Open In Colab PyPI - Version GitHub License

DANT graphical abstract

pyDANT is a Python toolbox that combines iterative motion correction and density-based clustering to robustly track single neurons across days of high-density recordings.


📄 Published article

Density-based longitudinal neuron tracking in high-density electrophysiological recordings

📚 Read the Documentation

🧮 Check out the MATLAB version (DANT)


⚙️ Installation

This section describes how to install pyDANT.

Install with Anaconda

Anaconda is recommended for managing the pyDANT environment.

conda create -n pyDANT python=3.11
conda activate pyDANT
pip install pyDANT

Install from Python Package Index (PyPI)

You can also install pyDANT directly from PyPI:

pip install pyDANT

Install from Source

If you prefer to install from source, clone the repository and install it manually:

git clone https://github.com/jiumao2/pyDANT.git
cd pyDANT
pip install -e .

🚀 Getting Started

To help you get familiar with the pipeline, we provide two tutorials.

  1. Colab Tutorial: Open the pyDANT Colab demo to run pyDANT in a browser without local setup or pre-downloading data.
  2. Documentation Tutorial: Download the example dataset for pyDANT, then follow the Python tutorial to run pyDANT locally or process your own recordings.

If you encounter any bugs, have questions, or want to suggest a feature, please open an issue. We look forward to your feedback!

📝 Citation

If you use pyDANT in your research, please cite our article:

@article{Huang2026DANT,
    author = {Huang, Yue and Wang, Hanbo and Cao, Jiaming and Chen, Yu and Wang, Xuanning and Zhao, Yujie and Ren, Hengkun and Zheng, Qiang and Yu, Jianing},
    title = {Density-based longitudinal neuron tracking in high-density electrophysiological recordings},
    journal = {Patterns},
    year = {2026},
    doi = {10.1016/j.patter.2026.101590},
    url = {https://doi.org/10.1016/j.patter.2026.101590},
    note = {Available online 17 June 2026}
}

📚 References & Acknowledgements

pyDANT builds upon and integrates several excellent open-source tools. We extend our gratitude to the authors of the following packages:

  • HDBSCAN: Hierarchical Density-Based Spatial Clustering of Applications with Noise. (Campello et al., 2013; McInnes & Healy, 2017).
  • Kilosort: Fast spike sorting with drift correction. (Pachitariu et al., 2024).
  • DREDge: Robust online multiband drift estimation in electrophysiology data. (Windolf et al., 2025).

📄 License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

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

pydant-1.1.2.tar.gz (36.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pydant-1.1.2-py3-none-any.whl (38.7 kB view details)

Uploaded Python 3

File details

Details for the file pydant-1.1.2.tar.gz.

File metadata

  • Download URL: pydant-1.1.2.tar.gz
  • Upload date:
  • Size: 36.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pydant-1.1.2.tar.gz
Algorithm Hash digest
SHA256 9000ff411d793eb8491acb11ab863ca5807dcdd2b2f9941fc00cb537ee958d43
MD5 b4bee018880f464e0057958c663cd8d2
BLAKE2b-256 f24eb0fa93acd8623fb8097124988ebcf98c8162fdf768feb689dbb7f9e91d45

See more details on using hashes here.

Provenance

The following attestation bundles were made for pydant-1.1.2.tar.gz:

Publisher: python-publish.yml on jiumao2/pyDANT

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pydant-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: pydant-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 38.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pydant-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4820e76dbaa941b42973ad8a5049acde888e73415ca4995cb47c40a809a8a8e2
MD5 233b4c19f9649a04fb8e5523447617a7
BLAKE2b-256 d5acfecc727ef9ace11e30bc2eadb8b27ad67d7fe3647399b23e8d3212ac8970

See more details on using hashes here.

Provenance

The following attestation bundles were made for pydant-1.1.2-py3-none-any.whl:

Publisher: python-publish.yml on jiumao2/pyDANT

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page