hfart¶
Functions for high-frequency analysis (HFA) of electophysiological signals for detection of short artifacts and quantitative assessment of the quality of signals.
This module written with Anastasia Kuzmina in 2014.
-
egegsignals.hfart.
best_fragment
(t, at, ln, percents=False, n=0)[source]¶ Selects the best signal’s fragment of a given length
Parameters: - t (numpy.ndarray) – Time sequence (sec)
- at (numpy.ndarray) – Time sequence where artifacts are located (sec)
- ln (float) – Length of a fragment (sec)
Returns: tuple
-
egegsignals.hfart.
hfa
(t, x)[source]¶ HFA procedure
Parameters: - t (numpy.ndarray) – Time sequence (sec)
- x (numpy.ndarray) – Sample sequence
Returns: tuple
-
egegsignals.hfart.
hfa_filter
(t, x, l=60, cutoff=0.3)[source]¶ Filtrates signal for HFA using FIR filter
Parameters: - t (numpy.ndarray) – Time sequence (sec)
- x (numpy.ndarray) – Sample sequence
- l (float (sec)) – Length of operator
- cutoff (float) – Bound (Hz)
Returns: numpy.ndarray
-
egegsignals.hfart.
longest_fragment
(t, at, n=0)[source]¶ Selects longest fragment of signal with n artifacts
Parameters: - t (numpy.ndarray) – Time sequence (sec)
- at (numpy.ndarray) – Time sequence where artifacts are located (sec)
- n (numpy.ndarray) – Number of artifacts
Returns: tuple
-
egegsignals.hfart.
merge_artifacts
(at1, at2)[source]¶ Merges artifacts locations.
Parameters: - at1 (numpy.ndarray) – Time sequence where artifacts from 1’st group are located (sec)
- at2 (numpy.ndarray) – Time sequence where artifacts from 2’nd group are located (sec)
Returns: numpy.ndarray
-
egegsignals.hfart.
outliers
(t, x)[source]¶ Finds outliers
Parameters: - t (numpy.ndarray) – Time sequence (sec)
- x (numpy.ndarray) – Sample sequence
Returns: numpy.ndarray
-
egegsignals.hfart.
quality
(t, at, n=0)[source]¶ Calculates the quality of signal
Parameters: - t (numpy.ndarray) – Time sequence (sec)
- at (numpy.ndarray) – Time sequence where artifacts are located (sec)
- n (integer) – Number of artifacts
Returns: float
-
egegsignals.hfart.
three_sigma
(t, x, aver=600, step=30)[source]¶ Calculates the 3*sigma zone (normal distribution) with averaging on intervals.
Parameters: - t (numpy.ndarray) – Time sequence (sec)
- x (numpy.ndarray) – Sample sequence
- aver (float) – Length of averaging interval (sec)
- step (float) – Step (sec)
Returns: numpy.ndarray