Skip to main content

This package implements adaptive kernel density estimation algorithms for 1-dimensional signals developed by Hideaki Shimazaki. This enables the generation of smoothed histograms that preserve important density features at multiple scales, as opposed to naive single-bandwidth kernel density methods that can either over or under smooth density estimates. These methods are described in Shimazaki's paper:

H. Shimazaki and S. Shinomoto, "Kernel Bandwidth Optimization in Spike Rate Estimation," in Journal of Computational Neuroscience 29(1-2): 171-182, 2010 http://dx.doi.org/10.1007/s10827-009-0180-4.

License: All software in this package is licensed under the Apache License 2.0. See LICENSE.txt for more details.

Authors: Hideaki Shimazaki (shimazaki.hideaki.8x@kyoto-u.jp) shimazaki on Github Lee A.D. Cooper (cooperle@gmail.com) cooperlab on GitHub Subhasis Ray (ray.subhasis@gmail.com)

Three methods are implemented in this package:

  1. sshist - can be used to determine the optimal number of histogram bins for independent identically distributed samples from an underlying one-dimensional distribution. The principal here is to minimize the L2 norm of the difference between the histogram and the underlying distribution.

  2. sskernel - implements kernel density estimation with a single globally-optimized bandwidth.

  3. ssvkernel - implements kernel density estimation with a locally variable bandwidth.

Requirements: Python >= 3.9 NumPy >= 1.24

Tested on Python 3.9 (NumPy 1.26) and Python 3.11 (NumPy 2.4).

Installation: pip install adaptivekde

Or from source: pip install -e .

Running tests: python -m pytest tests/ -v python tests/run_tests.py # standalone summary with golden checks python tests/run_benchmarks.py # benchmark timing (appends to tests/benchmarks.json)

Release files for adaptivekde 1.2.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 adaptivekde 1.2.0
File Size Uploaded
adaptivekde-1.2.0.tar.gz 13.5 kB Details

Built distribution (wheel)

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

Total release size: 27.4 kB

Release files / adaptivekde-1.2.0.tar.gz

Download URL adaptivekde-1.2.0.tar.gz
Size 13.5 kB
Tags Source
SHA-256 checksum
How to use checksums
8f474cb6c1d60d839f7889180da8aa2f0036cf0b37fc211d578aaee08757e331
BLAKE2b-256 checksum
How to use checksums
1e898f98400e5edc69ab0367992538bcde1e5024d129bc9ce98648abbe624bbe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.21

Release files / adaptivekde-1.2.0-py3-none-any.whl

Download URL adaptivekde-1.2.0-py3-none-any.whl
Size 13.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
48f10808e9d82d6a4fe690a6254aa5234d2b7cedfb273b5d08f5152ad3da7705
BLAKE2b-256 checksum
How to use checksums
40b4dfb27a3678027fcbd22a41b4d1ad28a38840cfea75075cf189c13b8b475a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.21

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.0

1 release file

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