• Stars
    star
    521
  • Rank 84,952 (Top 2 %)
  • Language
    Python
  • License
    MIT License
  • Created over 5 years ago
  • Updated 11 days ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A Python-based module for creating flexible and robust spike sorting pipelines.

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

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, in jupyter)
  • export report and export to phy
  • offer a powerful Qt-based viewer in separate package spikeinterface-gui
  • have some powerful sorting components to build your own sorter.

Documentation

Detailed documentation for 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 spikeinteface

You can install the new 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 sources:

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

More Repositories

1

spikeextractors

Python-based module for extracting from, converting between, and interfacing with many common file formats in extracellular recording.
Python
116
star
2

spiketutorials

Tutorials for using SpikeInterface on extracellular datasets.
Jupyter Notebook
59
star
3

probeinterface

Python package to handle probe layout, geometry and wiring to device.
Python
53
star
4

spiketoolkit

Python-based tools for pre-, post-processing, validating, and curating spike sorting datasets.
Python
49
star
5

MEArec

Fast and customizable of extracellular recordings on MEA
AGS Script
42
star
6

spikeinterface-gui

GUI for spikeinterface objects
Python
22
star
7

spikesorters

Python-based module with spike sorter wrappers and a simple API for running them.
Python
20
star
8

spikely

A GUI for running popular spike sorting algorithms on extracellular data of any file format.
Python
16
star
9

spikemetrics

Metrics for spike sorting validation/quality control
Python
12
star
10

probeinterface_library

Collection of probe description for probeinterface
Python
9
star
11

spikeinterface-dockerfiles

Collection of spike sorters Docker files
Dockerfile
8
star
12

spikewidgets

Python-based widgets for spike sorting and electrophysiology.
Python
6
star
13

SpikeInterface-Hackathon-Edinburgh-May24

Repo for SpikeInterface Hackathon in Edinburgh - May24
4
star
14

spikecomparison

Python-based modules to compare and benchmark spike sorting results.
Python
4
star
15

spikeinterface-pipelines

Collection of standardized analysis pipelines based on SpikeInterface
Python
3
star
16

spikeresults

A collection of notebooks with results obtained with the help of SpikeInterface
Jupyter Notebook
3
star
17

SpikeInterface.github.io

spikeinterface report
Jupyter Notebook
2
star
18

ndx-probeinterface

Extension for neural probes in the probeinterface format to NWB
Python
2
star
19

SpikeInterface-Training-Edinburgh-May24

Material for user training day of SpikeInterface
Jupyter Notebook
2
star
20

spikeinterface-events

Material for courses, conferences, and events about SpikeInterface
2
star
21

spikeinterface-airspeed-velocity-benchmarks

Benchmark SpikeInterface performance with Airflow
Python
1
star
22

hybrid_template_library

Library of templates to create hybrid data for spike sorting benchmarks
Jupyter Notebook
1
star
23

spikefeatures

Feature extraction library for extracellular waveforms
Python
1
star
24

test-sv-sorting-curation

Test repo for SortingView curation
1
star