spynal

Spynal: The Simple Python Neural Analysis Library. The backbone of your neural data analysis pipeline.

https://github.com/sbrincat/spynal

Science Score: 54.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
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (17.8%) to scientific vocabulary
Last synced: 7 months ago · JSON representation ·

Repository

Spynal: The Simple Python Neural Analysis Library. The backbone of your neural data analysis pipeline.

Basic Info
  • Host: GitHub
  • Owner: sbrincat
  • License: mit
  • Language: Python
  • Default Branch: master
  • Homepage:
  • Size: 5 MB
Statistics
  • Stars: 10
  • Watchers: 7
  • Forks: 2
  • Open Issues: 0
  • Releases: 3
Created over 5 years ago · Last pushed over 1 year ago
Metadata Files
Readme License Citation

README.md

DOI

spynal: Simple Python Neural Analysis Library

Tools for preprocessing and basic analysis of systems/cognitive neurophysiology data in Python

Covers typical preprocessing and basic analysis steps in neural analysis workflows. Intended users are anyone doing analysis of neurophysiology data, but we particularly aim to be accessible and easy-to-use for people migrating to Python from Matlab or other similar programming languages.

Features include:

Simplicity: Easy-to-use procedural interface; no OOP or complicated data/params structures
Consistency: Consistent function signature ~ analysis(data, labels, axis, extra_param=value)
Modularity: Can use specific functionality without buy-in to an entire processing chain
Foolproof: Extensive documentation and checking for proper function inputs
Flexibility: Detailed parameterization allows customization of analysis to users' needs
Vectorized analysis: Runs in parallel across all channels, no loops or data reshaping needed

Package includes the following modules:

matIO — Painless loading of MATLAB .mat data files into appropriate Python data structures
spikes — Preprocessing and analyses of spiking data
spectra — Spectral analysis and preprocessing of continuous data (LFP/EEG)
sync — Analysis of oscillatory neural synchrony (field-field and spike-field)
info — Measures of neural information about task/behavior variables
randstats — Nonparametric randomization, permutation, and bootstrap statistics
plots — Generation of common plot types; plotting utilities
utils — Numerical and general purpose utilities

Full documentation can be found at: https://spynal.readthedocs.io/en/latest/

Download & installation instructions

NOTE: Currently, spynal can only be installed against Python<=3.11, due to changes in the Import Manager in Python 3.12 that have not been accounted for in all dependent packages. For details, see this Stack Overflow answer: https://stackoverflow.com/a/77364602.

Users can either install the most recent stable release using pip or install the latest updates from the Github repository

Option 1: pip install

Recommended for users who prefer a simple installation and don't require the latest updates

- Open a terminal window, navigate to folder you want repository to live under (cd "parent directory")
- Run: pip install spynal

Option 2: Install from source (Github)

Recommended for developers and for users that would like access to the latest updates

2a: Download repository

- Open a terminal window, navigate to folder you want repository to live under (cd "parent directory")
- Run: git clone https://github.com/sbrincat/spynal.git

2b: Install package

- Navigate into the newly-created spynal folder (cd "parent directory"/spynal)
- For end users:  at command line, run: python setup.py install
- For developers: at command line, run: python setup.py develop
    (this will allow you to edit the library without reinstalling)

Usage

You should now be able to directly import spynal and its modules/functions in your code/notebooks like so:
import spynal
import spynal as spy
import spynal.spectra as spectra
from spynal.spectra import spectrogram

Contributions

We welcome any contributions of new/expanded functionality or more efficient implementations,
and all issues/bug reports.
Submit a pull request/issue on Github or email me at [Github handle] AT [institution] .edu

Citation (CITATION.cff)

cff-version: 1.2.0
title: spynal
message: "If you use this software, please cite it as below."
type: software
authors:
  - given-names: Scott
    family-names: Brincat
    affiliation: MIT
    orcid: 'https://orcid.org/0000-0002-7777-7294'
    email: sbrincat@mit.edu
version: 0.1.2
doi: 10.5281/zenodo.8346152
date-released: 2023-09-14
url: "https://github.com/sbrincat/spynal"

GitHub Events

Total
  • Watch event: 1
  • Push event: 2
Last Year
  • Watch event: 1
  • Push event: 2

Committers

Last synced: about 3 years ago

All Time
  • Total Commits: 164
  • Total Committers: 3
  • Avg Commits per committer: 54.667
  • Development Distribution Score (DDS): 0.073
Top Committers
Name Email Commits
sbrincat s****t@g****m 152
jtauber j****r@g****m 7
Scott Brincat s****t@S****l 5

Issues and Pull Requests

Last synced: 9 months ago

All Time
  • Total issues: 0
  • Total pull requests: 7
  • Average time to close issues: N/A
  • Average time to close pull requests: 25 days
  • Total issue authors: 0
  • Total pull request authors: 3
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 6
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
  • abardon (10)
  • sbrincat (1)
  • johntauber (1)
Top Labels
Issue Labels
Pull Request Labels
enhancement (1)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 23 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 5
  • Total maintainers: 1
pypi.org: spynal

Simple Python Neural Analysis Library

  • Versions: 5
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 23 Last month
Rankings
Dependent packages count: 6.6%
Stargazers count: 20.5%
Downloads: 21.2%
Average: 21.9%
Forks count: 30.5%
Dependent repos count: 30.6%
Maintainers (1)
Last synced: 7 months ago

Dependencies

setup.py pypi