Syncopy Data Classes#
The data structure in Syncopy is based around the idea that all
electrophysiology data can be represented as multidimensional arrays. For
example, a multi-channel local field potential can be stored as a
two-dimensional float array with the dimensions being time (sample) and
channel. This array is always stored in the data
property and can be
indexed using NumPy indexing.
Note
Each Syncopy data object is simply an annotated multi-dimensional array.
Different types of electrophysiology data often share common properties (e.g. having channel/electrode labels, having a time axis, etc.). An efficient way of organizing these different data types are classes organized in a hierarchy, with shared properties inherited from the top level to the bottom classes (see also Wikipedia).

The bottom classes in the class tree are for active use in analyses.
Syncopy Data Classes#
The following classes can be instanced at the package-level (spy.AnalogData(...)
etc.)
|
Multi-channel, uniformly-sampled, analog (real float) data |
|
Multi-channel, real or complex spectral data |
|
Multi-channel real or complex spectral connectivity data |
|
Multi-channel, uniformly-sampled, time-locked data. |
|
Spike times of multi- and/or single units |
|
Timestamps and integer codes of experimental events |