Analysis Runner Helper

GitHub Link to Code.

Analysis runner helper for feature importance operations.

This module provides helper methods for running feature importance analyses on individual sub-comparisons, extracting common logic from FeatureImportanceManager methods.

class mdxplain.feature_importance.helper.analysis_runner_helper.AnalysisRunnerHelper

Helper class for running feature importance analyses.

Provides static methods for executing feature importance analysis on individual sub-comparisons and processing the results. These methods extract common logic from FeatureImportanceManager to improve code organization and reusability.

Examples

>>> # Run analysis on single sub-comparison
>>> result = AnalysisRunnerHelper.run_single_analysis(
...     analyzer_type, X, y, sub_comp
... )
>>> # Process and store analysis result
>>> AnalysisRunnerHelper.store_analysis_result(
...     fi_data, result, metadata
... )
static store_analysis_result(fi_data: FeatureImportanceData, result: Dict[str, Any], metadata: Dict[str, Any]) None

Store analysis result in FeatureImportanceData object.

Takes the analysis result and metadata and stores them properly in the FeatureImportanceData container. Enriches metadata with model and analysis metadata for downstream visualization.

Parameters

fi_dataFeatureImportanceData

Feature importance data container to store result in

resultDict[str, Any]

Analysis result from analyzer containing importances, model, metadata

metadataDict[str, Any]

Metadata dictionary describing the analysis

Returns

None

Stores result in the fi_data object

Examples

>>> AnalysisRunnerHelper.store_analysis_result(
...     fi_data, analysis_result, metadata_dict
... )
static run_comparison_analysis(pipeline_data: PipelineData, comp_data: ComparisonData, analyzer_type: AnalyzerTypeBase, analysis_name: str) FeatureImportanceData

Run analysis on all sub-comparisons in a comparison.

Processes all sub-comparisons within a comparison object, running the specified analyzer on each one and collecting results.

Parameters

pipeline_dataPipelineData

Pipeline data object containing data and comparisons

comp_dataComparisonData

Comparison data object containing sub-comparisons

analyzer_typeAnalyzerTypeBase

Analyzer instance to use for all sub-comparisons

analysis_namestr

Name for the analysis (for metadata)

Returns

FeatureImportanceData

Complete feature importance data with all sub-comparison results

Examples

>>> fi_data = AnalysisRunnerHelper.run_comparison_analysis(
...     pipeline_data, comp_data, analyzer, "my_analysis"
... )
>>> print(len(fi_data.data))  # Number of sub-comparisons analyzed