Skip to main content

NeuRodent 🐁

CI Coverage License: MIT Python 3.10+ DOI Binder Open In Colab

A Python package for standardizing rodent EEG analysis and figure generation. Various EEG formats are loadable and features are extracted in parallel. Also includes a Snakemake workflow for automated analysis.

Presented at USRSE'25!

Installation

NeuRodent can be installed via pip or conda:

pip install neurodent

or

conda install -c conda-forge neurodent

For pipeline support, development setup, and other installation options, check out the full installation guide.

Usage

Visit the full documentation for more how-tos and examples: https://josephdong1000.github.io/neurodent

Overview

NeuRodent loads multi-format EEG data (LongRecordingAnalyzer → AnimalOrganizer) and computes features over windows (WindowAnalysisResult) and population spiking (FrequencyDomainSpikeAnalysisResult). Results feed into AnimalPlotter and ExperimentPlotter for multi-animal comparison by genotype, session, or circadian cycle.

from neurodent import (
    LongRecordingOrganizer,
    AnimalOrganizer,
    AnimalAnalyzer,
    ExperimentPlotter,
)

lro = LongRecordingOrganizer(data_path)
ao = AnimalOrganizer(lro)
war = AnimalAnalyzer(ao).compute_windowed_analysis(features=["rms", "psdband", "cohere"])
ep = ExperimentPlotter([war])
ep.plot_feature("rms", groupby="genotype")

A companion Snakemake workflow automates the full pipeline with cluster support.

Snakemake Workflow

The pipeline follows the Snakemake Workflow Catalog standardized layout, with workflow/Snakefile as the single entry point.

# Deploy via snakedeploy
pip install snakedeploy
snakedeploy deploy-workflow https://github.com/josephdong1000/neurodent . --tag <version>

# Run manually
snakemake --snakefile workflow/Snakefile --configfile config/config.yaml

Acknowledgements

This project benefited from insights and best practices described in Peter K. G. Williams’s One Good Tutorial.

Citation

If you find NeuRodent useful, please cite our work!

@software{dong2026neurodent,
  author    = {Dong, Joseph P. and Oh, Yongtaek and Marsh, Eric D.},
  title     = {NeuRodent},
  year      = {2025},
  publisher = {Zenodo},
  doi       = {10.5281/zenodo.15780751},
  url       = {https://doi.org/10.5281/zenodo.15780751},
  license   = {MIT}
}

Machine-readable citation metadata is also available in CITATION.cff.

Community & Governance

Metadata

Release files for neurodent 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for neurodent 0.4.0
File Size Uploaded
neurodent-0.4.0.tar.gz 511.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for neurodent 0.4.0
File Interpreter ABI Platform
neurodent-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 736.6 kB

Release files / neurodent-0.4.0.tar.gz

Download URL neurodent-0.4.0.tar.gz
Size 511.1 kB
Tags Source
SHA-256 checksum
How to use checksums
5ba1ca538eb9a8544d6389ae13af9ea6736b221473d98e2f8d3900ec5ebf4924
BLAKE2b-256 checksum
How to use checksums
8b153953cd4d2ea6851d9c60db69db9118d6db9ead38858c57d818121868af68
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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 Jul 8, 2026.

Transparency log

Release files / neurodent-0.4.0-py3-none-any.whl

Download URL neurodent-0.4.0-py3-none-any.whl
Size 225.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c9ac8434bfe787370334ee694c406ac7365d8d1c74b9d0d4ff0568cf05203ef9
BLAKE2b-256 checksum
How to use checksums
66274f583aecd57a60363ca35faffef29153811ca6e4804a0e7b421521f3eb88
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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 Jul 8, 2026.

Transparency log

Release history Release notifications | RSS feed

0.5.0

2 release files

This release

0.4.0 This release

2 release files

0.3.0

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page