Basis objects: one column of Z(X) each, with screening metadata.
Missing semantics ("no_evidence", spec §7): NaN/None input never triggers a
basis; transform returns 0.0 there. For TrendBasis a missing value maps to
0.0, i.e. the feature mean (documented decision; paper is silent).
Basis
dataclass
Basis(feature: str, support: int, effect_size: float, p_value: float, p_adj: float, enriched_class: Any = None)
One univariate basis function z_ir(x_i) plus its discovery metadata.
ThresholdBasis
dataclass
ThresholdBasis(feature: str, support: int, effect_size: float, p_value: float, p_adj: float, enriched_class: Any = None, cutoff: float = 0.0, side: str = 'low')
Bases: Basis
Tail flag 1{x <= c} (side='low') or 1{x >= c} (side='high').
CategoryBasis
dataclass
CategoryBasis(feature: str, support: int, effect_size: float, p_value: float, p_adj: float, enriched_class: Any = None, level: Any = None)
Bases: Basis
Level flag 1{x == v}; also the regression step basis.
HingeBasis
dataclass
HingeBasis(feature: str, support: int, effect_size: float, p_value: float, p_adj: float, enriched_class: Any = None, cutoff: float = 0.0, side: str = 'low')
Bases: Basis
Tail-deviation hinge (x - c)+ (side='high') or (c - x)+ (side='low').
TrendBasis
dataclass
TrendBasis(feature: str, support: int, effect_size: float, p_value: float, p_adj: float, enriched_class: Any = None, mean: float = 0.0)
Bases: Basis
Centered baseline trend x - mean (regression numerical features).
MissingIndicatorBasis
dataclass
MissingIndicatorBasis(feature: str, support: int, effect_size: float, p_value: float, p_adj: float, enriched_class: Any = None)
Bases: Basis
Explicit flag 1{x is missing} (missing='indicator' mode only).