Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

What is the dimension "num_samples" in ElectricalSeries #571

Open
ehennestad opened this issue Feb 5, 2024 · 2 comments
Open

What is the dimension "num_samples" in ElectricalSeries #571

ehennestad opened this issue Feb 5, 2024 · 2 comments
Labels
category: enhancement improvements of code or code behavior category: question questions about code or code behavior priority: medium non-critical problem and/or affecting only a small set of NWB users
Milestone

Comments

@ehennestad
Copy link

From the description for ElectricalSeries:

doc: A time series of acquired voltage data from extracellular recordings.
The data field is an int or float array storing data in volts. The first
dimension should always represent time. The second dimension, if present,
should represent channels.

It says the data can be 1D or 2D. However, the specification of the data dataset also suggests data can be 3D.

datasets:
- name: data
dtype: numeric
dims:
- - num_times
- - num_times
- num_channels
- - num_times
- num_channels
- num_samples

Which is the most up to date? Also what is num_samples in this context? I could understand if it was num_electrodes but num samples is very often the same as num_timepoints so this is confusing (I am not very familiar with ephys, so excuse me if this is obvious)

@CodyCBakerPhD
Copy link
Contributor

I believe the 3D case is for allowing the ability to write only extracted waveform snippets (each of length num_samples, as in number of frames sampled by each waveform) instead of the entire continuous voltage trace (the 2D version)

The most primary use case is the 2D version; there are other more recommended ways of writing waveform data, such as explicitly linking it to spiking events on the units table

In 3.0 I would recommend removing the 1D and 3D cases. I think we also planned at some point last year to add different types for neural ElectricalSeries and non-neural (but still voltage valued) series for things like analog and digital channels

@rly
Copy link
Contributor

rly commented Feb 5, 2024

@CodyCBakerPhD is correct and I second removing the 1D and 3D cases as well as splitting neural and non-neural electrical time series into different data types.

@stephprince stephprince added category: enhancement improvements of code or code behavior priority: medium non-critical problem and/or affecting only a small set of NWB users category: question questions about code or code behavior labels May 10, 2024
@stephprince stephprince added this to the 3.0 milestone May 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category: enhancement improvements of code or code behavior category: question questions about code or code behavior priority: medium non-critical problem and/or affecting only a small set of NWB users
Projects
None yet
Development

No branches or pull requests

4 participants