spiketools

spiketools: a Python package for analyzing single-unit neural activity - Published in JOSS (2023)

https://github.com/spiketools/spiketools

Science Score: 100.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 7 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: joss.theoj.org
  • Committers with academic emails
    1 of 4 committers (25.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords

data-analysis neuroscience python single-unit spike-analysis spikes

Scientific Fields

Mathematics Computer Science - 88% confidence
Economics Social Sciences - 85% confidence
Last synced: 4 months ago · JSON representation ·

Repository

Tools for analyzing spiking data from single-neuron recodings.

Basic Info
  • Host: GitHub
  • Owner: spiketools
  • License: apache-2.0
  • Language: Python
  • Default Branch: main
  • Homepage: https://spiketools.github.io
  • Size: 7.89 MB
Statistics
  • Stars: 29
  • Watchers: 2
  • Forks: 9
  • Open Issues: 7
  • Releases: 3
Topics
data-analysis neuroscience python single-unit spike-analysis spikes
Created over 4 years ago · Last pushed 6 months ago
Metadata Files
Readme Contributing License Code of conduct Citation

README.rst

spiketools
==========

|ProjectStatus| |Version| |BuildStatus| |Coverage| |License| |PythonVersions| |Publication|

.. |ProjectStatus| image:: https://www.repostatus.org/badges/latest/active.svg
   :target: https://www.repostatus.org/#active
   :alt: project status

.. |Version| image:: https://img.shields.io/pypi/v/spiketools.svg
   :target: https://pypi.org/project/spiketools/
   :alt: version

.. |BuildStatus| image:: https://github.com/spiketools/SpikeTools/actions/workflows/build.yml/badge.svg
   :target: https://github.com/spiketools/SpikeTools/actions/workflows/build.yml
   :alt: build statue

.. |Coverage| image:: https://codecov.io/gh/spiketools/spiketools/branch/main/graph/badge.svg
   :target: https://codecov.io/gh/spiketools/spiketools
   :alt: coverage

.. |License| image:: https://img.shields.io/pypi/l/spiketools.svg
   :target: https://opensource.org/license/apache-2-0
   :alt: license

.. |PythonVersions| image:: https://img.shields.io/pypi/pyversions/spiketools.svg
   :target: https://pypi.org/project/spiketools/
   :alt: python versions

.. |Publication| image:: https://joss.theoj.org/papers/10.21105/joss.05268/status.svg
   :target: https://doi.org/10.21105/joss.05268
   :alt: publication

``spiketools`` is a collection of tools and utilities for analyzing spiking data.

Overview
--------

``spiketools`` is an open-source module for processing and analyzing single-unit activity from neuro-electrophysiological recordings.

Available sub-modules in ``spiketools`` include:

- ``measures`` : measures and conversions that can be applied to spiking data
- ``objects`` : objects that can be used to manage spiking data
- ``spatial`` : space related functionality and measures
- ``stats`` : statistical measures for analyzing spiking data
- ``sim`` : simulations of spiking activity and related functionality
- ``plts`` : plotting functions for visualizing spike data and related measures
- ``utils`` : additional utilities for working with spiking data

Scope
-----

``spiketools`` is currently organized around analyses of single cell activity.

The current scope does not include population measures, though this may be extended in the future.

Note that ``spiketools`` does *not* cover spike sorting.
Check out `spikeinterface `_ for spike sorting.

Documentation
-------------

Documentation for ``spiketools`` is available
`here `_.

The documentation includes:

- `Tutorials `_:
  which describe and provide examples for each sub-module
- `API List `_:
  which lists and describes everything available in the module
- `Glossary `_:
  which defines key terms used in the module

If you have a question about using ``spiketools`` that doesn't seem to be covered by the documentation, feel free to
open an `issue `_ and ask!

Dependencies
------------

``spiketools`` is written in Python, and requires Python >= 3.7 to run.

It has the following required dependencies:

- `numpy `_
- `pandas `_
- `scipy `_
- `matplotlib `_

There are also optional dependencies, that offer extra functionality:

- `statsmodels `_
  is needed for some statistical measures, for example ANOVAs
- `pytest `_
  is needed to run the test suite locally

Installation
------------

The current release version of `spiketools` is the 0.X.X series.

See the `changelog `_ for notes on major version releases.

**Stable Release Version**

To install the latest stable release, you can use pip:

.. code-block:: shell

    $ pip install spiketools

Optionally, to include dependencies required for the `stats` module:

.. code-block:: shell

    $ pip install spiketools[stats]

**Development Version**

To get the current development version, first clone this repository:

.. code-block:: shell

    $ git clone https://github.com/spiketools/spiketools

To install this cloned copy, move into the directory you just cloned, and run:

.. code-block:: shell

    $ pip install .

**Editable Version**

To install an editable version, download the development version as above, and run:

.. code-block:: shell

    $ pip install -e .

Reference
---------

If you use this code in your project, please cite:

.. code-block:: text

    Donoghue, T., Maesta-Pereira, S., Han C. Z., Qasim, S. E., & Jacobs, J. (2023)
    spiketools: A Python package for analyzing single-unit neural activity.
    Journal of Open Source Software, 8(91), 5268. DOI: 10.21105/joss.05268

Direct Link: https://doi.org/10.21105/joss.05268

For citation information, see also the
`citation file `_.

Contribute
----------

This project welcomes and encourages contributions from the community!

To file bug reports and/or ask questions about this project, please use the
`Github issue tracker `_.

To see and get involved in discussions about the module, check out:

- the `issues board `_
  for topics relating to code updates, bugs, and fixes
- the `development page `_
  for discussion of potential major updates to the module

When interacting with this project, please use the
`contribution guidelines `_
and follow the
`code of conduct `_.

Owner

  • Name: SpikeTools
  • Login: spiketools
  • Kind: organization

Analysis tools for single unit data.

JOSS Publication

spiketools: a Python package for analyzing single-unit neural activity
Published
November 14, 2023
Volume 8, Issue 91, Page 5268
Authors
Thomas Donoghue ORCID
Department of Biomedical Engineering, Columbia University, New York, United States of America
Sandra Maesta-Pereira ORCID
Department of Biomedical Engineering, Columbia University, New York, United States of America
Claire Zhixian Han ORCID
Department of Biomedical Engineering, Columbia University, New York, United States of America
Salman Ehtesham Qasim ORCID
Department of Psychiatry, Icahn School of Medicine at Mount Sinai, New York, United States of America
Joshua Jacobs ORCID
Department of Biomedical Engineering, Columbia University, New York, United States of America, Department of Neurological Surgery, Columbia University, New York, United States of America
Editor
Andrew Quinn ORCID
Tags
neuroscience electrophysiology single unit activity

Citation (CITATION.cff)

cff-version: 1.2.0
message: >-
  If you use this software, please cite it using the metadata from this file.
type: software
title: 'spiketools'
authors:
- given-names: 'Thomas'
  family-names: 'Donoghue'
  orcid: 'https://orcid.org/0000-0001-5911-0472'
- given-names: 'Sandra'
  family-names: 'Maesta Pereira'
  orcid: 'https://orcid.org/0000-0001-6522-8311'
- given-names: 'Claire Z'
  family-names: 'Han'
  orcid: 'https://orcid.org/0000-0001-9710-8381'
- given-names: 'Salman E'
  family-names: 'Qasim'
  orcid: 'https://orcid.org/0000-0001-8739-5962'
- given-names: 'Joshua'
  family-names: 'Jacobs'
  orcid: 'https://orcid.org/0000-0003-1807-6882'
repository-code: 'https://github.com/spiketools/spiketools'
url: 'https://spiketools.github.io/'
license: Apache-2.0
preferred-citation:
  type: article
  title: 'spiketools: A Python package for analyzing single-unit neural activity'
  authors:
  - given-names: Thomas
    family-names: Donoghue
    orcid: 'https://orcid.org/0000-0001-5911-0472'
  - given-names: 'Sandra'
    family-names: 'Maesta Pereira'
    orcid: 'https://orcid.org/0000-0001-6522-8311'
  - given-names: 'Claire Z'
    family-names: 'Han'
    orcid: 'https://orcid.org/0000-0001-9710-8381'
  - given-names: 'Salman E'
    family-names: 'Qasim'
    orcid: 'https://orcid.org/0000-0001-8739-5962'
  - given-names: 'Joshua'
    family-names: 'Jacobs'
    orcid: 'https://orcid.org/0000-0003-1807-6882'
  journal: 'Journal of Open Source Software'
  doi: '10.21105/joss.05268'
  issue: 91
  volume: 8
  year: 2023
  start: 5268

GitHub Events

Total
  • Issues event: 2
  • Watch event: 7
  • Delete event: 5
  • Issue comment event: 13
  • Push event: 16
  • Pull request review comment event: 16
  • Pull request review event: 5
  • Pull request event: 10
  • Create event: 4
Last Year
  • Issues event: 2
  • Watch event: 7
  • Delete event: 5
  • Issue comment event: 13
  • Push event: 16
  • Pull request review comment event: 17
  • Pull request review event: 6
  • Pull request event: 10
  • Create event: 4

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 916
  • Total Committers: 4
  • Avg Commits per committer: 229.0
  • Development Distribution Score (DDS): 0.194
Past Year
  • Commits: 18
  • Committers: 1
  • Avg Commits per committer: 18.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Tom Donoghue t****h@g****m 738
maestapereira s****0@c****u 114
claire98han 9****n 61
Justin Kiggins j****s@g****m 3
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 35
  • Total pull requests: 104
  • Average time to close issues: 4 months
  • Average time to close pull requests: 14 days
  • Total issue authors: 5
  • Total pull request authors: 5
  • Average comments per issue: 1.06
  • Average comments per pull request: 0.57
  • Merged pull requests: 100
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 2
  • Pull requests: 8
  • Average time to close issues: N/A
  • Average time to close pull requests: about 12 hours
  • Issue authors: 1
  • Pull request authors: 2
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.5
  • Merged pull requests: 6
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • TomDonoghue (27)
  • maestapereira (3)
  • rly (2)
  • neuromusic (2)
  • djsaunde (1)
Pull Request Authors
  • TomDonoghue (85)
  • maestapereira (10)
  • claire98han (6)
  • neuromusic (2)
  • weijiazh97 (1)
Top Labels
Issue Labels
0.1 (17) Maintenance (6) bug (5) enhancement (5) question (2) organization (1) documentation (1)
Pull Request Labels
0.1 (29) documentation (12) enhancement (7) Maintenance (5)

Dependencies

optional-requirements.txt pypi
  • statsmodels *
requirements-docs.txt pypi
  • numpydoc *
  • sphinx *
  • sphinx-copybutton *
  • sphinx_bootstrap_theme *
  • sphinx_gallery *
requirements.txt pypi
  • matplotlib *
  • numpy *
  • pandas *
  • scipy *
.github/workflows/build.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • codecov/codecov-action v3 composite
.github/workflows/draft-pdf.yml actions
  • actions/checkout v3 composite
  • actions/upload-artifact v1 composite
  • openjournals/openjournals-draft-action master composite
setup.py pypi