You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# DataJoint Element - Array Electrophysiology Element
2
2
3
-
This repository features DataJoint pipeline design for extracellular array electrophysiology,
4
-
with ***Neuropixels*** probe and ***kilosort*** spike sorting method.
3
+
+This repository features DataJoint pipeline design for extracellular array electrophysiology,
4
+
with Neuropixels probe and Kilosort spike sorting method.
5
5
6
-
The pipeline presented here is not a complete pipeline by itself, but rather a modular
6
+
+The pipeline presented here is not a complete pipeline by itself, but rather a modular
7
7
design of tables and dependencies specific to the extracellular electrophysiology workflow.
8
8
9
-
This modular pipeline element can be flexibly attached downstream
9
+
+This modular pipeline element can be flexibly attached downstream
10
10
to any particular design of experiment session, thus assembling a fully functional
11
11
ephys pipeline.
12
12
13
-
See [Background](Background.md) for the background information and development timeline.
13
+
+ See the [Element Array Electrophysiology documentation](https://elements.datajoint.org/description/array_ephys/) for the background information and development timeline.
14
+
15
+
+ For more information on the DataJoint Elements project, please visit https://elements.datajoint.org. This work is supported by the National Institutes of Health.
that models (a) combining this Element with the corresponding [Element-Session](https://github.com/datajoint/element-session)
24
-
, and (b) declaring a ***SkullReference*** table to provide Location.
26
+
, and (b) declaring a `SkullReference` table to provide Location.
27
+
28
+
## Table descriptions
29
+
30
+
### Probe & electrodes
31
+
32
+
The `probe` schema contains information regarding the Neuropixels probe and electrode configuration.
25
33
26
-
### The design of probe
34
+
<details>
35
+
<summary>Click to expand details</summary>
27
36
28
-
+***ProbeType*** - a lookup table specifying the type of Neuropixels probe (e.g. "neuropixels 1.0", "neuropixels 2.0 single-shank")
29
-
+***ProbeType.Electrode*** - all electrode and their properties for a particular probe type
37
+
+`ProbeType` - a lookup table specifying the type of Neuropixels probe (e.g. "neuropixels 1.0", "neuropixels 2.0 single-shank")
38
+
39
+
+`ProbeType.Electrode` - all electrode and their properties for a particular probe type
30
40
+ An electrode here refers to one recordable electrode site on the Neuropixels probe (e.g. for Neuropixels 1.0, there are 960 sites per shank)
31
-
+***Probe*** - record of an actual physical probe, identifiable by some unique ID (e.g. probe's serial number)
32
-
+***ElectrodeConfig*** - particular electrode configuration to be used for ephys recording
33
-
+***ElectrodeConfig.Electrode*** - corresponding electrodes in ***ProbeType.Electrode*** that are used for recording in this electrode configuration (e.g. for Neuropixels 1.0 or 2.0, there can be at most 384 electrodes usable for recording per probe)
34
41
35
-
### Extracellular ephys recording
42
+
+`Probe` - record of an actual physical probe, identifiable by some unique ID (e.g. probe's serial number)
43
+
44
+
+`ElectrodeConfig` - particular electrode configuration to be used for ephys recording
45
+
46
+
+`ElectrodeConfig.Electrode` - corresponding electrodes in `ProbeType.Electrode` that are used for recording in this electrode configuration (e.g. for Neuropixels 1.0 or 2.0, there can be at most 384 electrodes usable for recording per probe)
47
+
48
+
</details>
49
+
50
+
### Extracellular electrophysiology recording
51
+
52
+
The `ephys` schema stores information regarding the recording from a probe for a given session.
53
+
54
+
<details>
55
+
<summary>Click to expand details</summary>
56
+
57
+
+`ProbeInsertion` - a surgical insertion of a probe in the brain. Every experimental session consists of one or more entries in `ProbeInsertion` with a corresponding `InsertionLocation` each
58
+
59
+
+`EphysRecording` - each `ProbeInsertion` is accompanied by a corresponding `EphysRecording`, specifying the `ElectrodeConfig` used for the recording from the `Probe` defined in such `ProbeInsertion`
60
+
61
+
</details>
36
62
37
-
+***ProbeInsertion*** - a surgical insertion of a probe in the brain. Every experimental session consists of one or more entries in ***ProbeInsertion*** with a corresponding ***InsertionLocation*** each
38
-
+***EphysRecording*** - each ***ProbeInsertion*** is accompanied by a corresponding ***EphysRecording***, specifying the ***ElectrodeConfig*** used for the recording from the ***Probe*** defined in such ***ProbeInsertion***
39
-
40
63
### Clusters and spikes
41
64
42
-
This ephys element features automatic ingestion for spike sorting results from the ***kilosort*** method.
65
+
The `ephys` schema features automatic ingestion of spike sorting results from the `Kilosort` analysis method.
66
+
67
+
<details>
68
+
<summary>Click to expand details</summary>
43
69
44
-
+***Clustering*** - specify instance(s) of clustering on an ***EphysRecording***, by some ***ClusteringMethod***
45
-
+***Curation*** - specify instance(s) of curations performed on the output of a given ***Clustering***
46
-
+***CuratedClustering*** - set of results from a particular round of clustering/curation
47
-
+***CuratedClustering.Unit*** - Identified unit(s) from one ***Curation***, and the associated properties (e.g. cluster quality, spike times, spike depths, etc.)
48
-
+***WaveformSet*** - A set of spike waveforms for units from a given CuratedClustering
70
+
+`Clustering` - specify instance(s) of clustering on an `EphysRecording`, by some `ClusteringMethod`
71
+
72
+
+`Curation` - specify instance(s) of curations performed on the output of a given `Clustering`
73
+
74
+
+`CuratedClustering` - set of results from a particular round of clustering/curation
75
+
+`CuratedClustering.Unit` - Identified unit(s) from one `Curation`, and the associated properties (e.g. cluster quality, spike times, spike depths, etc.)
76
+
+`WaveformSet` - A set of spike waveforms for units from a given CuratedClustering
77
+
78
+
</details>
49
79
50
80
## Installation
81
+
<details>
82
+
<summary>Click to expand details</summary>
51
83
52
84
+ Install `element-array-ephys`
53
85
```
@@ -60,17 +92,22 @@ This ephys element features automatic ingestion for spike sorting results from t
60
92
```
61
93
62
94
+ Install `element-interface`
63
-
64
95
+ `element-interface` is a dependency of `element-array-ephys`, however it is not contained within `requirements.txt`.
When using this Element, one needs to run `ephys.activate` to declare the schemas and tables on the database.
107
+
108
+
<details>
109
+
<summary>Click to expand details</summary>
110
+
74
111
To activate the `element-array-ephys`, ones need to provide:
75
112
76
113
1. Schema names
@@ -90,6 +127,22 @@ For more detail, check the docstring of the `element-array-ephys`:
90
127
help(probe.activate)
91
128
help(ephys.activate)
92
129
130
+
</details>
131
+
93
132
### Example usage
94
133
95
134
See [this project](https://github.com/datajoint/workflow-array-ephys) for an example usage of this Array Electrophysiology Element.
135
+
136
+
## Citation
137
+
138
+
+ If your work uses DataJoint and DataJoint Elements, please cite the respective Research Resource Identifiers (RRIDs) and manuscripts.
139
+
140
+
+ DataJoint for Python or MATLAB
141
+
+ 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
142
+
143
+
+ DataJoint ([RRID:SCR_014543](https://scicrunch.org/resolver/SCR_014543)) - DataJoint for `<Select Python or MATLAB>` (version `<Enter version number>`)
144
+
145
+
+ DataJoint Elements
146
+
+ 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
147
+
148
+
+ DataJoint Elements ([RRID:SCR_021894](https://scicrunch.org/resolver/SCR_021894)) - Element Array Electrophysiology (version `<Enter version number>`)
0 commit comments