Data Preprocessing
Dont forget!
interpolate_nan_clip
def interpolate_nan_clip(
x, physiological_range_clip:NoneType=None, percentile_clip:NoneType=None, return_mask_only:bool=False
):
Function to clip outliers based on percentiles or physiological range and then interpolate nearby values
calculate_samples_mp
def calculate_samples_mp(
zarr_files, channels, frequency, sample_seq_len_sec, stride_sec, start_offset_sec:NoneType=None,
max_seq_len_sec:NoneType=None, include_partial_samples:bool=True, constant_nan_tolerance:float=1.0,
require_all_channels:bool=True, min_seq_len_sec:NoneType=None, constant_channels:NoneType=None
):
Multiprocessing function to generate samples
calculate_samples
def calculate_samples(
zarr_file, channels, frequency, sample_seq_len_sec, stride_sec, start_offset_sec:NoneType=None,
max_seq_len_sec:NoneType=None, include_partial_samples:bool=True, require_all_channels:bool=True,
constant_nan_tolerance:float=1.0, min_seq_len_sec:NoneType=None, constant_channels:NoneType=None
):
Function to create a dataframe of samples and their sequence indices
check_signal_not_constant
def check_signal_not_constant(
channel_data, constant_tolerance:float=1.0
):
Function to check if a signal is NOT constant. This works for NaNs and constant values.
check_hypnograms_mp
def check_hypnograms_mp(
zarr_files, required_stages:list=[0, 1, 2, 3, 4], constant_tolerance:float=1.0
):
Multiprocessing function to check hypnograms
check_hypnogram
def check_hypnogram(
zarr_file, required_stages:list=[0, 1, 2, 3, 4], constant_tolerance:float=1.0
):
Function to check if a hypnogram contains all required stages and is not constant