Skip to main content

SpikeInterface: a unified framework for spike sorting

Latest Release latest release
Documentation latest documentation
License license
Build Status CI build status
Codecov codecov

Twitter Mastodon

Please Star the project to support us and Watch to always stay up-to-date!

SpikeInterface is a Python package designed to unify preexisting spike sorting technologies into a single code base. If you use SpikeInterface, you are also using code and ideas from many other projects. Our codebase would be tiny without the amazing algorithms and formats that we interface with. See them all, and how to cite them, on our references page. In the past year, we have added support for the following tools:

If you would like us to add another tool, or you would like to integrate your project with our package, please open an issue.

With SpikeInterface, users can:

  • read/write many extracellular file formats.
  • pre-process extracellular recordings.
  • run many popular, semi-automatic spike sorters (kilosort1-4, mountainsort4-5, spykingcircus, tridesclous, ironclust, herdingspikes, yass, waveclus)
  • run sorters developed in house (lupin, spykingcircus2, tridesclous2, simple) that compete with kilosort4
  • run these popular sorters without installation using containers (Docker/Singularity).
  • post-process sorted datasets using the SortingAnalyzer
  • compare and benchmark spike sorting outputs.
  • compute quality metrics to validate and curate spike sorting outputs.
  • visualize recordings and spike sorting outputs in several ways (matplotlib, sortingview, jupyter, ephyviewer)
  • export a report and/or export to phy
  • curate your sorting with several strategies (ml-based, metrics based, manual, ...)
  • offer a powerful Qt-based or web-based viewer in a separate package spikeinterface-gui for manual curation that replaces phy.
  • have powerful sorting components to build your own sorter.
  • have a full motion/drift correction framework

Documentation

Detailed documentation of the latest PyPI release of SpikeInterface can be found here.

Detailed documentation of the development version of SpikeInterface can be found here.

Several tutorials to get started can be found in spiketutorials.

Checkout our YouTube channel for video tutorials: SpikeInterface YouTube Channel.

There are also some useful notebooks on our blog that cover advanced benchmarking and sorting components.

You can also have a look at the spikeinterface-gui.

How to install spikeinterface

You can install the latest version of spikeinterface version with pip (using quotes ensures pip install works in all terminals/shells):

pip install "spikeinterface[full]"

The [full] option installs all the extra dependencies for all the different sub-modules.

To install all interactive widget backends, you can use:

 pip install "spikeinterface[full,widgets]"

To get the latest updates, you can install spikeinterface from source:

git clone https://github.com/SpikeInterface/spikeinterface.git
cd spikeinterface
pip install -e .
cd ..

Citation

If you find SpikeInterface useful in your research, please cite:

@article{buccino2020spikeinterface,
  title={SpikeInterface, a unified framework for spike sorting},
  author={Buccino, Alessio Paolo and Hurwitz, Cole Lincoln and Garcia, Samuel and Magland, Jeremy and Siegle, Joshua H and Hurwitz, Roger and Hennig, Matthias H},
  journal={Elife},
  volume={9},
  pages={e61834},
  year={2020},
  publisher={eLife Sciences Publications Limited}
}

Please also cite other relevant papers for the specific components you use. For a full list of references, please check the references page.

Metadata

Release files for spikeinterface 0.105.4

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

Source distribution (sdist)

Source distribution for spikeinterface 0.105.4
File Size Uploaded Provenance Actions
spikeinterface-0.105.4.tar.gz 979.5 kB Without provenance Details for spikeinterface-0.105.4.tar.gz

Built distribution (wheel)

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

Total release size: 2.2 MB

Release files / spikeinterface-0.105.4.tar.gz

Download URL spikeinterface-0.105.4.tar.gz
Size 979.5 kB
Tags Source
SHA-256 checksum
How to use checksums
7d6f3778988f2ee1bce43a4427db41d0a6f3b6580fb5c78668f37ebb400e94bd
BLAKE2b-256 checksum
How to use checksums
70ae5e1ba4d0cd471aa90486fa34d53baa6bad38fc0ca6fb65c24d262282ae02
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.15

Release files / spikeinterface-0.105.4-py3-none-any.whl

Download URL spikeinterface-0.105.4-py3-none-any.whl
Size 1.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
96a996105cb9a4e9c9e0a8d20083d1172e03ae439fa952f0b15b9314b94fd3d0
BLAKE2b-256 checksum
How to use checksums
4cfd78e289f738c869109f3bc7e081e583fc6487731d2d6d00293922687bf3fc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.15

Security for spikeinterface 0.105.4

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.105.4 This release

2 release files No provenance

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