Converting Data To NWB

Neurodata Without Borders (NWB) is a data standard for neurophysiology. Converting data to NWB involves:

  1. Reading data and metadata from source files
  2. Adding necessary metadata
  3. Writing data and metadata to NWB following best practices
  4. Packaging large datasets for optimal cloud deployment

The NWB ecosystem offers various solutions, ranging from automated no-code tools to fine-grained programmatic options.

Available Tools

NWB GUIDE (GUI for Data Entry)

Type: Downloadable application

Features:

  • Guides users through data conversion process
  • Supports 40+ common data formats
  • Allows metadata entry
  • Offers NWB file inspection via NWB Inspector
  • Offers data visualization via Neurosift
  • Facilitates uploading to DANDI Archive

Limitations: May require manual addition of lab-specific data

NeuroConv

Type: Python library (underlies NWB GUIDE)

Features:

  • Supports 45+ neurophysiology data formats
  • Offers more flexibility than NWB GUIDE
  • Provides tools for post-hoc time alignment of multiple data streams
  • Supports cloud deployment

PyNWB

Type: Python library (underlies NeuroConv)

Features:

  • Building NWB files from scratch
  • Working with unsupported data formats
  • Developing custom NWB extensions

MatNWB

Type: MATLAB library

Features:

  • Building NWB files from scratch
  • Working with unsupported data formats

Choosing the Right Tool

  1. For most common data formats and straightforward conversions, start with NWB GUIDE.
  2. If you need more flexibility or are comfortable with Python, consider NeuroConv
  3. For custom data formats, complex conversions, or when developing NWB extensions, use PyNWB or MatNWB.

Remember to consult the provided documentation and tutorials for detailed guidance on using each tool