pydpeet.add_primitive_segments#

pydpeet.add_primitive_segments(df, STEP_ANALYZER_PRIMITIVES_CONFIG=None, SEGMENTS_TO_DETECT_CONFIG=None, ADJUST_SEGMENTS_CONFIG=None, THRESHOLDS_PRIMITIVE_ANNOTATION=None, THRESHOLD_CV_SEGMENTS_0A_END=None, THRESHOLD_CONSOLE_PRINTS_CV_CHECK=None, THRESHOLD_CONSOLE_PRINTS_ZERO_LENGTH_CHECK=None, THRESHOLD_CONSOLE_PRINTS_FINETUNING_WIDTH=None, THRESHOLD_CONSOLE_PRINTS_POWER_ZERO_WATT_CHECK=None, SHOW_RUNTIME=True, check_CV_0Aend_segments_bool=True, check_zero_length_segments_bool=True, check_Power_zero_W_segments_bool=True, supress_IO_warnings=False, PRECOMPILE=True, FORCE_PRECOMPILATION=False)[source]#

Function to perform step analysis to create a segmentation of a dataframe into primitive Segments.

Parameters: df (pd.DataFrame): Input dataframe to perform primitive step analysis on. STEP_ANALYZER_PRIMITIVES_CONFIG (Dict): Configuration for step analysis (combined Dict of following parameters) SEGMENTS_TO_DETECT_CONFIG (List[Tuple[str, float]]): Threshold values for each column to detect segments

Example: [(“Voltage[V]”, 0.1), (“Current[A]”, 0.1), (“Power[W]”, 0.1)]

ADJUST_SEGMENTS_CONFIG (List[Tuple[str, float]]): Threshold values for each column to adjust the segments

Example: [(“Voltage[V]”, 0.1), (“Current[A]”, 0.1), (“Power[W]”, 0.1)]

THRESHOLDS_PRIMITIVE_ANNOTATION (Dict[str, float]): Threshold values for each column to annotate primitives

Example: {“V”: 0.1, “I”: 0.1, “P”: 0.1} #Same key as DATA_COLUMNS

THRESHOLD_CV_SEGMENTS_0A_END (float): Threshold value for CV 0A end segments THRESHOLD_CONSOLE_PRINTS_CV_CHECK (int): Threshold value for CV check console prints THRESHOLD_CONSOLE_PRINTS_ZERO_LENGTH_CHECK (int): Threshold value for zero length check console prints THRESHOLD_CONSOLE_PRINTS_FINETUNING_WIDTH (int): Threshold value for finetuning width check console prints THRESHOLD_CONSOLE_PRINTS_POWER_ZERO_WATT_CHECK (int): Threshold value for power zero watt check console prints SHOW_RUNTIME (bool): Whether to show the runtime of this function, by default True check_CV_0Aend_segments_bool (bool): Whether to check CV 0A end segments, by default True check_zero_length_segments_bool (bool): Whether to check zero length segments, by default True check_Power_zero_W_segments_bool (bool): Whether to check power zero watt segments, by default True supress_IO_warnings (bool): Whether to supress IO warnings, by default False PRECOMPILE (bool): Whether to allow to precompile the functions, by default True FORCE_PRECOMPILATION (bool): Whether to force precompilation, by default False

Returns: df_primitives (pd.DataFrame): The final annotated dataframe

Parameters:
  • df (DataFrame)

  • STEP_ANALYZER_PRIMITIVES_CONFIG (dict | None)

  • SEGMENTS_TO_DETECT_CONFIG (list[tuple[str, float]] | None)

  • ADJUST_SEGMENTS_CONFIG (list[tuple[str, float]] | None)

  • THRESHOLDS_PRIMITIVE_ANNOTATION (dict[str, float] | None)

  • THRESHOLD_CV_SEGMENTS_0A_END (float | None)

  • THRESHOLD_CONSOLE_PRINTS_CV_CHECK (int | None)

  • THRESHOLD_CONSOLE_PRINTS_ZERO_LENGTH_CHECK (int | None)

  • THRESHOLD_CONSOLE_PRINTS_FINETUNING_WIDTH (int | None)

  • THRESHOLD_CONSOLE_PRINTS_POWER_ZERO_WATT_CHECK (int | None)

  • SHOW_RUNTIME (bool)

  • check_CV_0Aend_segments_bool (bool)

  • check_zero_length_segments_bool (bool)

  • check_Power_zero_W_segments_bool (bool)

  • supress_IO_warnings (bool)

  • PRECOMPILE (bool)

  • FORCE_PRECOMPILATION (bool)

Return type:

DataFrame