ezmsg.event.poissonevents#

Classes

class PoissonEventSettings(output_fs: float = 30000, layout: str = 'coo', compress_dims: list[int] | None = None, assume_counts: bool = False, min_rate: float = 1e-06, max_rate: float = 500.0)[source]#

Bases: Settings

Parameters:
output_fs: float = 30000#

Output sampling rate.

layout: str = 'coo'#

Layout of the output event train sparse array. Options are ‘coo’ or ‘gcxs’

compress_dims: list[int] | None = None#

Dimensions to compress. Ignored if layout is ‘coo’.

assume_counts: bool = False#

If True, input is event counts per bin. If False, input is firing rate in Hz.

min_rate: float = 1e-06#

Minimum rate to avoid division by zero.

max_rate: float = 500.0#

Maximum expected firing rate (Hz). Used to pre-allocate event arrays.

__init__(output_fs=30000, layout='coo', compress_dims=None, assume_counts=False, min_rate=1e-06, max_rate=500.0)#
Parameters:
Return type:

None

class PoissonEventState[source]#

Bases: object

accumulated: ndarray[tuple[Any, ...], dtype[_ScalarT]] | None = None#

Integrated rate since last event for each channel.

threshold: ndarray[tuple[Any, ...], dtype[_ScalarT]] | None = None#

Exp(1) threshold for next event for each channel.

class PoissonEventTransformer(*args, **kwargs)[source]#

Bases: BaseStatefulTransformer[PoissonEventSettings, AxisArray, AxisArray, PoissonEventState]

class PoissonEventUnit(*args, settings=None, **kwargs)[source]#

Bases: BaseTransformerUnit[PoissonEventSettings, AxisArray, AxisArray, PoissonEventTransformer]

Parameters:

settings (Settings | None)

SETTINGS#

alias of PoissonEventSettings