cogpy.events
Event data structures and catalog management. EventCatalog is the unified
container for point and interval events returned by all detectors. It wraps
a pandas DataFrame with standardized columns and provides converters,
factories, and query helpers.
Guide: How to detect events | Tutorial: Detection and Events | Spec: EventCatalog Specification v2.6.0
Submodules
EventCatalog: Unified event data structure (v2.6). |
|
Event matching and lag estimation primitives. |
|
Overlap detection utilities for interval EventCatalogs. |
Event catalog infrastructure (v2.6).
Provides EventCatalog, a lightweight bridge between: - analysis containers (cogpy.datasets.schemas.Events / Intervals) - visualization (cogpy.events.EventStream)
- class cogpy.events.EventCatalog(df, name='events', metadata=<factory>)
Bases:
objectUnified event catalog with a standardized table schema.
- Required columns:
event_id : str | int
t : float (seconds)
- Optional interval columns:
t0, t1, duration
- Parameters:
df (DataFrame)
name (str)
metadata (dict[str, Any])
- df: DataFrame
- filter_by_channel(channels)
- Parameters:
channels (int | Iterable[int])
- Return type:
EventCatalog
- filter_by_spatial(*, AP=None, ML=None, radius=None)
- Parameters:
AP (float | None)
ML (float | None)
radius (float | None)
- Return type:
EventCatalog
- filter_by_time(t_min, t_max)
- Parameters:
t_min (float)
t_max (float)
- Return type:
EventCatalog
- classmethod from_blob_candidates(blob_dict, *, label='burst_candidate', id_prefix='blob', **metadata)
- Parameters:
blob_dict (dict[str, Any])
label (str)
id_prefix (str)
metadata (Any)
- Return type:
EventCatalog
- classmethod from_burst_dict(burst_list, *, label='burst', **metadata)
- Parameters:
burst_list (list[dict[str, Any]])
label (str)
metadata (Any)
- Return type:
EventCatalog
- classmethod from_hmaxima(peaks_df, *, time_col=None, label='peak', id_prefix='peak', value_col=None, **metadata)
Create a point-event catalog from an h-maxima peak table.
Supports both: - detect_hmaxima-style columns (time, freq, ap, ml, amp, …) - orthoslicer-friendly columns (t, z, x, y, value)
- Parameters:
peaks_df (DataFrame)
time_col (str | None)
label (str)
id_prefix (str)
value_col (str | None)
metadata (Any)
- Return type:
EventCatalog
- classmethod from_spwr_mat(mat_data, *, label='ripple', id_prefix='ripple', **metadata)
- Parameters:
mat_data (dict[str, Any])
label (str)
id_prefix (str)
metadata (Any)
- Return type:
EventCatalog
- property is_interval_events: bool
- property is_point_events: bool
- metadata: dict[str, Any]
- name: str = 'events'
- to_event_stream(style=None)
Convert to EventStream.
- Parameters:
style (Any | None)
- to_events()
Convert to cogpy.datasets.schemas.Events (always possible).
- to_intervals()
Convert to cogpy.datasets.schemas.Intervals (requires t0/t1).
- to_point_intervals(half_window)
Convert point events to symmetric windows around t.
- Parameters:
half_window (float)
- class cogpy.events.EventRegistry
Bases:
objectRegistry for event streams.
Manages multiple EventStream instances (bursts, ripples, etc.).
- classmethod from_dict(dct)
Restore an EventRegistry from serialized metadata.
- Parameters:
dct (dict)
- Return type:
EventRegistry
- get(name)
- Parameters:
name (str)
- Return type:
EventStream | None
- list()
- Return type:
list[str]
- register(stream)
- Parameters:
stream (EventStream)
- Return type:
None
- remove(name)
- Parameters:
name (str)
- Return type:
None
- to_dict()
- Return type:
dict
- class cogpy.events.EventStream(name, df, *, time_col='t', id_col='event_id', style=None)
Bases:
objectContainer for event data.
Events are stored in a pandas DataFrame with required and optional columns.
Required columns: - event_id (int or str): Unique identifier - t (float): Event time in seconds
Optional columns: - channel (int): Flat channel index - AP (int): Grid row - ML (int): Grid column - label (str): Event type/category - value (float): Amplitude/score - duration (float): Duration in seconds - … (any other metadata)
- Parameters:
name (str)
df (pd.DataFrame)
time_col (str)
id_col (str)
style (EventStyle | None)
- classmethod from_dict(dct)
Restore an EventStream from serialized metadata.
If
recordsare present, they are used to reconstruct the full table. Otherwise, an empty table is created with the required columns.- Parameters:
dct (dict)
- Return type:
EventStream
- get_event_by_id(event_id)
- Return type:
Series | None
- get_events_in_window(t0, t1)
- Parameters:
t0 (float)
t1 (float)
- Return type:
DataFrame
- get_next_event(current_time)
- Parameters:
current_time (float)
- Return type:
Series | None
- get_prev_event(current_time)
- Parameters:
current_time (float)
- Return type:
Series | None
- to_dict()
- Return type:
dict
- class cogpy.events.EventStyle(color='#ff0000', marker='circle', line_width=2.0, alpha=0.8)
Bases:
objectVisual style for event display.
- Parameters:
color (str)
marker (str)
line_width (float)
alpha (float)
- color
Marker/line color (hex or named).
- Type:
str
- marker
Marker shape (‘circle’, ‘square’, ‘triangle’).
- Type:
str
- line_width
Line width for markers.
- Type:
float
- alpha
Transparency (0-1).
- Type:
float
- alpha: float
- color: str
- line_width: float
- marker: str