Open
Description
Using the neo structure can be quite cumbersome in some cases, eg like slicing objects based on an epoch array (#525). To improve on this we could A) extend the methods neo objects offer and B) start an object-independent collection of utility functions in a separate file.
Most likely a combination of both is necessary to achieve best usability of the neo structure.
Here are some suggestions for helpful utility functions:
- create a
neo.Epoch
based on aneo.Event
object (or maybe twoneo.Event
objects) - implement a
time_slice
function forneo.Segment
that also slices child objects accordingly - slicing a
neo.Segment
based on aneo.Epoch
- add
shift
methods for neo Data objects, which move timescale of the object (includingt_start
andt_stop
adjustment, etc) - support inplace slicing to avoid data duplication and keep original neo structure.
Any thoughts on this? Additional suggestions?