Feature Selector Add Service

GitHub Link to Code.

Service providing feature-type-specific properties for adding selections.

This module provides the FeatureSelectorAddService class that offers feature-type-specific properties for adding selections with reduction options. Each property returns a type-specific service with reduction methods.

class mdxplain.feature.services.feature_selector_add_service.FeatureSelectorAddService(manager: FeatureSelectorManager, pipeline_data: PipelineData)

Service providing feature-type-specific properties for adding selections.

Module separation:

  • Knows feature types (distances, contacts, etc.)

  • Does NOT know reduction metrics

  • Each property returns a type-specific service

Each feature type service provides:

  • Basic add method via __call__()

  • Reduction methods like with_cv_reduction(), with_std_reduction(), etc.

Examples

Basic usage: >>> pipeline.feature_selector.add.distances(“test”, “res ALA”) >>> pipeline.feature_selector.add.contacts(“test”, “resid 120-140”)

With reduction: >>> pipeline.feature_selector.add.distances.with_cv_reduction(“test”, “res ALA”, threshold_min=0.1) >>> pipeline.feature_selector.add.contacts.with_frequency_reduction(“test”, “resid 120-140”, threshold_max=0.8)

__init__(manager: FeatureSelectorManager, pipeline_data: PipelineData)

Initialize feature selector add service.

Parameters

managerFeatureSelectorManager

Manager instance for executing add operations

pipeline_dataPipelineData

Pipeline data container with trajectory and feature data

Returns

None

Initializes service with manager and pipeline_data references

property distances: DistancesSelectionService

Get distances add service with distances-specific reduction methods.

Returns a service that provides methods for adding distance feature selections with optional post-selection reduction based on statistical metrics like CV, standard deviation, variance, etc.

Parameters

None

Returns

DistancesSelectionService

Service with distances-specific reduction methods

Available reduction methods:

  • with_cv_reduction(): Coefficient of variation filtering

  • with_std_reduction(): Standard deviation filtering

  • with_variance_reduction(): Variance filtering

  • with_range_reduction(): Range filtering

  • with_transitions_reduction(): Transition-based filtering

  • with_min_reduction(): Minimum value filtering

  • with_mad_reduction(): Median absolute deviation filtering

  • with_mean_reduction(): Mean value filtering

  • with_max_reduction(): Maximum value filtering

Examples

>>> pipeline.feature_selector.add.distances("test", "res ALA")
>>> pipeline.feature_selector.add.distances.with_cv_reduction("test", "res ALA", threshold_min=0.1)
property contacts: ContactsSelectionService

Get contacts add service with contacts-specific reduction methods.

Returns a service that provides methods for adding contact feature selections with optional post-selection reduction based on contact statistics like frequency, stability, and transitions.

Parameters

None

Returns

ContactsSelectionService

Service with contacts-specific reduction methods

Available reduction methods:

  • with_frequency_reduction(): Contact frequency filtering

  • with_stability_reduction(): Contact stability filtering

  • with_transitions_reduction(): Contact transition filtering

Examples

>>> pipeline.feature_selector.add.contacts("test", "resid 120-140")
>>> pipeline.feature_selector.add.contacts.with_frequency_reduction("test", "resid 120-140", threshold_min=0.3)
property coordinates: CoordinatesSelectionService

Get coordinates add service with coordinates-specific reduction methods.

Returns a service that provides methods for adding coordinate feature selections with optional post-selection reduction based on structural flexibility metrics like RMSF, standard deviation, etc.

Parameters

None

Returns

CoordinatesSelectionService

Service with coordinates-specific reduction methods

Available reduction methods:

  • with_std_reduction(): Standard deviation filtering

  • with_rmsf_reduction(): Root mean square fluctuation filtering

  • with_cv_reduction(): Coefficient of variation filtering

  • with_variance_reduction(): Variance filtering

  • with_range_reduction(): Range filtering

  • with_mad_reduction(): Median absolute deviation filtering

  • with_mean_reduction(): Mean value filtering

  • with_min_reduction(): Minimum value filtering

  • with_max_reduction(): Maximum value filtering

Examples

>>> pipeline.feature_selector.add.coordinates("test", "backbone")
>>> pipeline.feature_selector.add.coordinates.with_rmsf_reduction("test", "backbone", threshold_max=2.0)
property torsions: TorsionsSelectionService

Get torsions add service with torsions-specific reduction methods.

Returns a service that provides methods for adding torsion angle feature selections with optional post-selection reduction based on angular flexibility and transition metrics.

Parameters

None

Returns

TorsionsSelectionService

Service with torsions-specific reduction methods

Available reduction methods:

  • with_transitions_reduction(): Angular transition filtering

  • with_std_reduction(): Standard deviation filtering

  • with_mad_reduction(): Median absolute deviation filtering

  • with_mean_reduction(): Mean value filtering

  • with_range_reduction(): Range filtering

  • with_min_reduction(): Minimum value filtering

  • with_max_reduction(): Maximum value filtering

  • with_cv_reduction(): Coefficient of variation filtering

  • with_variance_reduction(): Variance filtering

Examples

>>> pipeline.feature_selector.add.torsions("test", "phi psi")
>>> pipeline.feature_selector.add.torsions.with_transitions_reduction("test", "phi psi", threshold_min=5)
property dssp: DSSPSelectionService

Get DSSP add service with DSSP-specific reduction methods.

Returns a service that provides methods for adding secondary structure feature selections with optional post-selection reduction based on structural stability and transition frequencies.

Parameters

None

Returns

DsspSelectionService

Service with DSSP-specific reduction methods

Available reduction methods:

  • with_transitions_reduction(): Secondary structure transition filtering

  • with_transition_frequency_reduction(): Transition frequency filtering

  • with_stability_reduction(): Structural stability filtering

  • with_class_frequencies_reduction(): Structure class frequency filtering

Examples

>>> pipeline.feature_selector.add.dssp("test", "resid 50-100")
>>> pipeline.feature_selector.add.dssp.with_stability_reduction("test", "resid 50-100", threshold_min=0.7)
property sasa: SasaSelectionService

Get SASA add service with SASA-specific reduction methods.

Returns a service that provides methods for adding solvent accessible surface area feature selections with optional post-selection reduction based on exposure variability and burial statistics.

Parameters

None

Returns

SasaSelectionService

Service with SASA-specific reduction methods

Available reduction methods:

  • with_cv_reduction(): Coefficient of variation filtering

  • with_range_reduction(): Range filtering

  • with_std_reduction(): Standard deviation filtering

  • with_variance_reduction(): Variance filtering

  • with_mad_reduction(): Median absolute deviation filtering

  • with_mean_reduction(): Mean value filtering

  • with_min_reduction(): Minimum value filtering

  • with_max_reduction(): Maximum value filtering

  • with_burial_fraction_reduction(): Burial fraction filtering

Examples

>>> pipeline.feature_selector.add.sasa("test", "resid 1-50")
>>> pipeline.feature_selector.add.sasa.with_cv_reduction("test", "resid 1-50", threshold_max=0.5)