https://github.com/catalystneuro/buffalo-lab-to-nwb

Scripts to convert Buffalo Lab data to the NWB standard

https://github.com/catalystneuro/buffalo-lab-to-nwb

Science Score: 10.0%

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

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    2 of 5 committers (40.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.8%) to scientific vocabulary

Keywords

conversion nwb

Keywords from Contributors

electrophysiology neuroscience
Last synced: 5 months ago · JSON representation

Repository

Scripts to convert Buffalo Lab data to the NWB standard

Basic Info
  • Host: GitHub
  • Owner: catalystneuro
  • Language: Python
  • Default Branch: master
  • Size: 6.55 MB
Statistics
  • Stars: 2
  • Watchers: 3
  • Forks: 0
  • Open Issues: 5
  • Releases: 0
Topics
conversion nwb
Created over 6 years ago · Last pushed almost 4 years ago
Metadata Files
Readme

README.md

Buffalo-lab-data-to-nwb

Scripts which convert Buffalo lab data to NWB format. Currently we only support conversion for processed data.

authors: Luiz Tauffer, Maija Honig, Ryan Ly, Ben Dichter

Install

pip install buffalo-lab-data-to-nwb

Use

The conversion function can be used in different forms:

1. Imported and run from a python script:
Here's an example: we'll grab raw data (.ncs files) and processed data (.mat and .nex5 files) and convert them to .nwb files. ```python from buffalonwb.conversionmodule import conversionfunction from pathlib import Path import yaml

basepath = Path(BASEPATHTOFILES)

Source files

sourcepaths = dict() sourcepaths['raw Nlx'] = {'type': 'dir', 'path': basepath.joinpath("RawNlxCSCs")} sourcepaths['processed Nlx'] = {'type': 'dir', 'path': str(basepath.joinpath('ProcessedNlxData'))} sourcepaths['processed behavior'] = {'type': 'file', 'path': str(basepath.joinpath('ProcessedBehavior/MatFile2017-04-2711-41-21.mat'))} sourcepaths['sorted spikes'] = {'type': 'file', 'path': str(basepath.joinpath('SortedSpikes/2017-04-2711-41-21_sorted.nex5'))}

Output .nwb file

f_nwb = 'buffalo.nwb'

Load metadata from YAML file

metafile = 'metafile.yml' with open(metafile) as f: metadata = yaml.safe_load(f)

kwargsfields = { 'skipraw': True, 'skipprocessed': False, 'nolfp_iterator': False, }

conversionfunction(sourcepaths=sourcepaths, fnwb=fnwb, metadata=metadata, **kwargsfields)

```

2. Command line:
Similarly, the conversion function can be called from the command line in terminal: $ python conversion_module.py [raw_nlx_dir] [lfp_mat_dir] [sorted_spikes_nex5_file] [behavior_file] [output_file] [metadata_file] [-skipraw] [-skipprocessed] [-lfpiterator]

IMPORTANT:
[rawnlxdir] and [lfpmatdir] should be paths to directories
[sortedspikesnex5file] [behaviorfile] [outputfile] [metadatafile] should be paths to files

optional inputs add these after the positional arguments to use additional options
"-skipraw" (will skip adding raw data to nwb file)
"-skipprocessed" (will skip adding processed data to nwb file)
"-lfpiterator" (change lfp data method to dataChunkIterator (for large data))


3. Graphical User Interface:
To use the GUI, just run the auxiliary function nwb_gui.py from terminal: $ python nwb_gui.py The GUI eases the task of editing the metadata of the resulting .nwb file, it is integrated with the conversion module (conversion on-click) and allows for visually exploring the data in the end file with nwb-jupyter-widgets.

Owner

  • Name: CatalystNeuro
  • Login: catalystneuro
  • Kind: organization
  • Email: hello@catalystneuro.com

GitHub Events

Total
Last Year

Committers

Last synced: about 2 years ago

All Time
  • Total Commits: 125
  • Total Committers: 5
  • Avg Commits per committer: 25.0
  • Development Distribution Score (DDS): 0.64
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Ryan Ly r****y@l****v 45
luiztauffer l****r@h****m 36
!git for-each-ref --format='%(refname:short)' `git symbolic-ref HEAD` b****r@g****m 35
maijahonig m****5@n****u 8
Cody Baker 5****D 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 16
  • Total pull requests: 9
  • Average time to close issues: 30 days
  • Average time to close pull requests: 7 days
  • Total issue authors: 1
  • Total pull request authors: 4
  • Average comments per issue: 0.94
  • Average comments per pull request: 0.22
  • Merged pull requests: 8
  • 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
Top Labels
Issue Labels
Pull Request Labels