Spike train surrogates

Module to generate surrogates of a spike train by randomising its spike times in different ways (see [sr1], [sr2], and [sr3]). Different methods destroy different features of the original data.

Main function

surrogates(spiketrain[, n_surrogates, …]) Generates surrogates of a spiketrain by a desired generation method.

Surrogate types

JointISI(spiketrain[, dither, …]) Joint-ISI dithering implementation, based on the ideas from [sr1] and [sr2].
dither_spikes(spiketrain, dither[, …]) Generates surrogates of a spike train by spike dithering.
randomise_spikes(spiketrain[, n_surrogates, …]) Generates surrogates of a spike train by spike time randomization.
shuffle_isis(spiketrain[, n_surrogates, …]) Generates surrogates of a spike train by inter-spike-interval (ISI) shuffling.
dither_spike_train(spiketrain, shift[, …]) Generates surrogates of a spike train by spike train shifting.
jitter_spikes(spiketrain, bin_size[, …]) Generates surrogates of a spike train by spike jittering.
bin_shuffling(spiketrain, max_displacement) Bin shuffling surrogate generation.
trial_shifting(spiketrains, dither[, …]) Generates surrogates of a spike train by trial shifting.

References

[sr1](1, 2) George L Gerstein. Searching for significance in spatio-temporal firing patterns. Acta Neurobiologiae Experimentalis, 64(2):203–208, 2004.
[sr2](1, 2) Sebastien GR Louis, Markus Diesmann, and others. Surrogate spike train generation through dithering in operational time. Frontiers in computational neuroscience, 4:127, 2010.
[sr3]Sebastien Louis, Christian Borgelt, and Sonja Grün. Generation and selection of surrogate methods for correlation analysis. In Analysis of Parallel Spike Trains, volume 7, pages 359–382. Springer, 2010. doi:10.1007/978-1-4419-5675-0_17.