BPointExtractionArbol2017IsoelectricCrossings#
- class pepbench.algorithms.icg.BPointExtractionArbol2017IsoelectricCrossings(handle_missing_events: Literal['raise', 'warn', 'ignore'] = 'warn')[source]#
B-point extraction algorithm by Arbol et al. (2017) based on isoelectric crossings.
This algorithm extracts B-points based on the last crossing of the dZ/dt signal through the isoelectric line (i.e., the mean of the dZ/dt signal in the cardiac cycle) before the C-point.
For more information, see [Arb17].
- Parameters:
- handle_missing_eventsone of {“warn”, “raise”, “ignore”}, optional
How to handle failing event extraction. Must be one of:
"warn": issue a warning and set the event to NaN,"raise": raise anEventExtractionError, or"ignore": continue silently.
Default:
"warn".
- Attributes:
- points_
BPointDataFrame DataFrame containing the extracted B-points. Each row contains the B-point location (in samples from beginning of signal) for each heartbeat, index functions as id of heartbeat. B-point locations can be NaN if no B-points were detected for certain heartbeats.
- points_
References
[Arb17]Árbol, J. R., Perakakis, P., Garrido, A., Mata, J. L., Fernández-Santaella, M. C., & Vila, J. (2017). Mathematical detection of aortic valve opening (B point) in impedance cardiography: A comparison of three popular algorithms. Psychophysiology, 54(3), 350-357. https://doi.org/10.1111/psyp.12799
Methods
clone()Create a new instance of the class with all parameters copied over.
extract(*, icg, heartbeats, c_points, ...)Extract B-points from given ICG derivative signal.
get_params([deep])Get parameters for this algorithm.
set_params(**params)Set the parameters of this Algorithm.
- __init__(handle_missing_events: Literal['raise', 'warn', 'ignore'] = 'warn')[source]#
Initialize new
BPointExtractionArbol2017IsoelectricCrossingsalgorithm instance.- Parameters:
- handle_missing_eventsone of {“warn”, “raise”, “ignore”}, optional
How to handle failing event extraction. Must be one of:
"warn": issue a warning and set the event to NaN,"raise": raise anEventExtractionError, or"ignore": continue silently.
Default:
"warn".
- extract(*, icg: _IcgRawDataFrame | DataFrame, heartbeats: _HeartbeatSegmentationDataFrame | DataFrame, c_points: _CPointDataFrame | DataFrame, sampling_rate_hz: float | None)[source]#
Extract B-points from given ICG derivative signal.
This algorithm extracts B-points based on the last isoelectric crossing before the C-point.
The results are saved in the
points_attribute of the super class.- Parameters:
- icg
DataFrame ICG derivative signal
- heartbeats
DataFrame Segmented heartbeats. Each row contains start, end, and R-peak location (in samples from beginning of signal) of that heartbeat, index functions as id of heartbeat
- c_points
DataFrame Extracted C-points. Each row contains the C-point location (in samples from beginning of signal) for each heartbeat, index functions as id of heartbeat. C-point locations can be NaN if no C-points were detected for certain heartbeats
- sampling_rate_hzint
sampling rate of ICG derivative signal in hz
- icg
- Returns:
- self
- Raises:
EventExtractionErrorIf the event extraction fails and
handle_missingis set to “raise”
- clone() Self[source]#
Create a new instance of the class with all parameters copied over.
This will create a new instance of the class itself and all nested objects
- get_params(deep: bool = True) dict[str, Any][source]#
Get parameters for this algorithm.
- Parameters:
- deep
Only relevant if object contains nested algorithm objects. If this is the case and deep is True, the params of these nested objects are included in the output using a prefix like
nested_object_name__(Note the two “_” at the end)
- Returns:
- params
Parameter names mapped to their values.