Skip to main content

Python toolkit for analysis, visualization, and comparison of spike sorting output

Project description

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

:warning::warning::warning: PRs with new features are frozen!: after the 0.100.0 release, we will not accept PRs with new features (only bug fixes) until February 21st 2024.

SpikeInterface is a Python framework designed to unify preexisting spike sorting technologies into a single code base.

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

With SpikeInterface, users can:

  • read/write many extracellular file formats.
  • pre-process extracellular recordings.
  • run many popular, semi-automatic spike sorters (also in Docker/Singularity containers).
  • post-process sorted datasets.
  • 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
  • offer a powerful Qt-based viewer in a separate package spikeinterface-gui
  • have powerful sorting components to build your own sorter.

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.

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:

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}
}

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

spikeinterface-0.100.7.tar.gz (619.3 kB view hashes)

Uploaded Source

Built Distribution

spikeinterface-0.100.7-py3-none-any.whl (803.4 kB view hashes)

Uploaded Python 3

Supported by

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