Workflow for extracellular array electrophysiology data acquired with a polytrode probe (e.g. Neuropixels, Neuralynx) using the SpikeGLX or OpenEphys acquisition software and processed with MATLAB-based Kilosort or python-based Kilosort spike sorting software.
A complete electrophysiology workflow can be built using the DataJoint Elements.
This repository provides demonstrations for:
-
Set up a workflow using DataJoint Elements (see workflow_array_ephys/pipeline.py)
-
Ingestion of data/metadata based on a predefined file structure, file naming convention, and directory lookup methods (see workflow_array_ephys/paths.py).
-
Ingestion of clustering results.
-
Export of
no_curation
schema to NWB and DANDI (see notebooks/09-NWB-export.ipynb).
See the Element Array Electrophysiology documentation for the background information and development timeline.
For more information on the DataJoint Elements project, please visit https://elements.datajoint.org. This work is supported by the National Institutes of Health.
The electrophysiology workflow presented here uses components from 4 DataJoint Elements
(element-lab,
element-animal,
element-session,
element-array-ephys) assembled
together to form a fully functional workflow. Note that element-array-ephys offers three
schema options, selected via the DataJoint config file, with
dj.config['custom']['ephys_mode']
acute
probe insertion, with curated clusteringchronic
probe insertion, with curated clusteringno-curation
, acute probe insertion with kilosort triggered clustering and supported NWB exportprecluster
, acute probe insertion with pre-processing steps prior to clustering and curated clustering
Optionally, this can be used in conjunction with element-event and element-electrode-localization.
The installation instructions can be found at the DataJoint Elements documentation.
Please refer to the workflow-specific Jupyter notebooks for an in-depth explanation of how to ...
-
Run the workflow (03-process.ipynb).
-
Explore the data (05-explore.ipynb).
-
Examine trialized analyses, and establish downstream analyses (07-downstream-analysis.ipynb)
-
Locate probes within the Common Coordinate Framework (08-electrode-localization.ipynb)
-
Export to NWB and DANDI (09-NWB-export.ipynb)
See our YouTube tutorial for a walkthrough of the schemas and functions:
If your work uses DataJoint and DataJoint Elements, please cite the respective Research Resource Identifiers (RRIDs) and manuscripts.
-
DataJoint for Python or MATLAB
-
Yatsenko D, Reimer J, Ecker AS, Walker EY, Sinz F, Berens P, Hoenselaar A, Cotton RJ, Siapas AS, Tolias AS. DataJoint: managing big scientific data using MATLAB or Python. bioRxiv. 2015 Jan 1:031658. doi: https://doi.org/10.1101/031658
-
DataJoint (RRID:SCR_014543) - DataJoint for
<Select Python or MATLAB>
(version<Enter version number>
)
-
-
DataJoint Elements
-
Yatsenko D, Nguyen T, Shen S, Gunalan K, Turner CA, Guzman R, Sasaki M, Sitonic D, Reimer J, Walker EY, Tolias AS. DataJoint Elements: Data Workflows for Neurophysiology. bioRxiv. 2021 Jan 1. doi: https://doi.org/10.1101/2021.03.30.437358
-
DataJoint Elements (RRID:SCR_021894) - Element Array Electrophysiology (version
<Enter version number>
)
-