pd_provider

Pandas-backed labeled data.

class pysatl_cpd.data.providers.labeled.implementations.pd_provider.PandasLabeledData(unlabeled, segment_info, annotation, *, segment_column='segment', segment_start_column='start', segment_end_column='end')[source]

Bases: LabeledData[NumericArray, AnnotationT], Generic

Pandas labeled data provider with configurable column names.

Parameters:
__init__(unlabeled, segment_info, annotation, *, segment_column='segment', segment_start_column='start', segment_end_column='end')[source]
Parameters:
Return type:

None

property unlabeled: PandasDataProvider[UnlabeledTimeseriesAnnotation]

Get the underlying unlabeled data provider.

Returns:

The underlying unlabeled data provider.

Return type:

unlabeled

classmethod from_unlabeled_data(unlabeled, segment_info, annotation)[source]

Create labeled data from unlabeled data provider.

Parameters:
Returns:

New labeled data instance.

Return type:

PandasLabeledData[TypeVar(A, bound= TimeseriesAnnotation)]

Raises:

TypeError – If unlabeled is not a PandasDataProvider.

dataset(state_columns=None)[source]

Get the dataset with segment columns.

Parameters:

state_columns (dict[str, str] | None) – Optional mapping of column names to state keys.

Returns:

DataFrame with timeseries and segment columns.

Return type:

DataFrame

property feature_columns: Sequence[str]

Get the feature column names.

Returns:

Sequence of feature column names.

Return type:

feature_columns

select_columns(*, feature_columns, rename_provider=False)[source]

Select a subset of feature columns.

Parameters:
  • feature_columns (Sequence[str]) – Sequence of column names to select.

  • rename_provider (bool) – If True, updates the provider name to reflect the selected columns.

Returns:

New labeled data with selected columns.

Return type:

PandasLabeledData[TypeVar(AnnotationT, bound= TimeseriesAnnotation)]

create_feature_column(*, name, mapping, rename_provider=False)[source]

Append a derived feature column computed row-wise.

Parameters:
  • name (str) – Name of the new feature column.

  • mapping (Callable[[Series], object]) – Callable applied to each feature row.

  • rename_provider (bool) – If True, updates the provider name to reflect the new column.

Returns:

New labeled data with the appended feature column.

Return type:

PandasLabeledData[TypeVar(AnnotationT, bound= TimeseriesAnnotation)]