Feature Reduction Helper

GitHub Link to Code.

Feature reduction helper for data reduction operations.

This module provides utilities for processing data reduction results, handling retention warnings, and managing reduced feature metadata in the FeatureManager.

class mdxplain.feature.helper.feature_reduction_helper.FeatureReductionHelper

Helper class for feature data reduction operations.

Provides static methods for processing reduction results, handling retention rate warnings, and managing reduced feature metadata.

static process_reduction_results(feature_data: FeatureData, results: Dict[str, Any], threshold_min: int | float | None, threshold_max: int | float | None, metric: str) None

Process and store reduction results for a single trajectory FeatureData object.

Parameters

feature_dataFeatureData

FeatureData object to update with reduction results

resultsDict[str, Any]

Results dictionary from compute_dynamic_values

threshold_minfloat or None

Minimum threshold used for context in warnings

threshold_maxfloat or None

Maximum threshold used for context in warnings

metricstr

Metric name used for context in warnings

Returns

None

Updates feature_data with reduction results and prints warnings

Examples

>>> FeatureReductionHelper.process_reduction_results(
...     feature_data, results, 0.1, 0.9, "cv"
... )
Now using reduced data. Data reduced from (1000, 500) to (1000, 45). (9.0% retained).
static reset_reduction(pipeline_data, feature_key: str) None

Reset data reduction and return to using full original data.

Parameters

pipeline_dataPipelineData

Pipeline data object to reset

feature_keystr

Feature key to reset reduction for

Returns

None

Resets reduced data and prints summary

Examples

>>> FeatureReductionHelper.reset_reduction(pipeline_data, "distances")
Reset reduction: Now using full data (1000, 500). (Data was reduced to (1000, 45), 9.0%)
static check_reduction_state(pipeline_data, feature_key: str) bool

Check if feature has reduced data.

Parameters

pipeline_dataPipelineData

Pipeline data object to check

feature_keystr

Feature key to check

Returns

bool

True if feature has reduced data, False otherwise

Examples

>>> has_reduction = FeatureReductionHelper.check_reduction_state(
...     pipeline_data, "distances"
... )