noise_floor_separation

mcda.noise_floor_separation(scores, noise_floors, ranks=None)

Test every pair of tools against the per-metric noise floors.

For each unordered pair the function takes the largest native-unit score difference relative to the floor over the metrics that declare one. The pair is separated when that ratio reaches 1 on at least one metric. A pair that is comparable (has an observed floored score on both tools for some metric) but reaches the floor on no metric is recorded as indistinguishable.

Parameters

Name Type Description Default
scores Array-like of shape (n_tools, n_metrics) in native units. required
noise_floors Sequence[float | None] Length n_metrics floors in native units, None (or a non-positive value) where the card declares none. Pass beam.mcda.registry_context(...).noise_floors. required
ranks Sequence[int] | None Optional length n_tools ranks (1 is best). When given, the report names the top two tools and flags whether they are indistinguishable. None

Returns

Type Description
NoiseFloorReport