nwbmatic
NWB creator from various data streams
TODO badges
Overview
This package started as a main feature of pynapple IO module. It is now a standalone package to help create NWB from various data streams from electrophysiological and calcium imaging pipelines. It supports outputs from :
Electrophysiology | Calcium imaging | Behavior |
---|---|---|
Phy | matlab CNMF-E | DeepLabCut |
Neurosuite | Inscopix CNMF-E | Optitrack |
Minian | ||
Suite2P |
Warning A larger choice of data format is available from neuroconv
Usage
The general workflow of loading a session is described by the infographic below. As it is challenging to accomodate all possible types of format, we aimed to keep the IO of nwbmatic minimal while allowing the user to inherit the base loader and import their own custom io functions.
The base loader is thus responsible for initializing the NWB file containing the tracking data, the epochs and the session informations.
Getting Started
Installation
The best way to install nwbmatic is with pip within a new conda environment :
or directly from the source code:
$ conda create --name nwbmatic pip python=3.8
$ conda activate nwbmatic
$ # clone the repository
$ git clone https://github.com/pynapple-org/nwbmatic.git
$ cd nwbmatic
$ # Install in editable mode with `-e` or, equivalently, `--editable`
$ pip install -e .
This procedure will install all the dependencies including
- pynapple
- pandas
- numpy
- pynwb 2.0
- h5py
Example
In this example, a session preprocessed with phy will be copied to NWB and loaded.
Credits
Thanks to Selen Calgin, Sara Mahallati and Luigi Petrucco for their contributions.