smx.predicates.generation#
PredicateGenerator: generate binary predicates from quantile thresholds on zone aggregation scores.
Classes#
Generate binary predicates from quantile thresholds on zone scores. |
Module Contents#
- class smx.predicates.generation.PredicateGenerator(quantiles: List[float])[source]#
Generate binary predicates from quantile thresholds on zone scores.
For each spectral zone and each quantile value, two predicates are created:
zone <= q_value(samples below the quantile threshold)zone > q_value(samples above the quantile threshold)
Duplicate predicates (same rule) arising from identical quantile values are automatically removed.
Parameters#
- quantileslist of float
Quantile fractions in [0, 1] to use as thresholds. Example:
[0.25, 0.5, 0.75]creates six predicates per zone.
Attributes (set after
fit())#- predicates_df_pd.DataFrame
One row per predicate. Columns:
predicate,rule,zone,thresholds,operator.- indicator_df_pd.DataFrame
Binary indicator matrix (samples × predicates). Columns are predicate rule strings; values are 1/0.
- co_occurrence_matrix_pd.DataFrame
Pairwise co-occurrence matrix of predicates.
- quantiles#
- predicates_df_: pandas.DataFrame | None = None#
- indicator_df_: pandas.DataFrame | None = None#
- co_occurrence_matrix_: pandas.DataFrame | None = None#
- fit(zone_scores_df: pandas.DataFrame) PredicateGenerator[source]#
Learn predicates from zone_scores_df.
Parameters#
- zone_scores_dfpd.DataFrame
Zone aggregation scores (samples × zones) as returned by
smx.zones.aggregation.ZoneAggregator.
Returns#
self
- transform(zone_scores_df: pandas.DataFrame) pandas.DataFrame[source]#
Apply the fitted predicates to new zone scores data.
This re-uses the thresholds learned during
fit()and is useful for applying predicates to a prediction (validation) set.Parameters#
- zone_scores_dfpd.DataFrame
Zone scores for the samples to evaluate.
Returns#
- pd.DataFrame
Binary indicator matrix (samples × predicates).
- fit_transform(zone_scores_df: pandas.DataFrame) pandas.DataFrame[source]#
Fit and return the indicator matrix in one step.