MODULE REFERENCE

timeseries

anomx.detection.detectors.timeseries

Native component-wise decisions for deterministic anomaly-score series.

IQRDetector

IQRDetector(scale: Bounds = 1.5)

Bases: QuantileDetector

Learn Tukey fences Q1 - scale*IQR and Q3 + scale*IQR.

scale is nonnegative (default 1.5) and may be supplied per component. With constant training scores, any different value lies outside the fence.

Signature parameters
ParameterTypeDefault
scaleBounds1.5

Members

component_keyattribute

QuantileDetector

QuantileDetector(low_quantile: Bounds = None, high_quantile: Bounds = 0.99)

Bases: AdaptiveThresholdDetector

Learn lower/upper per-component quantiles from explicit training scores.

Unlike the legacy QuantileThresholdDetector, calibration is separate from detection, so evaluation data never changes its own threshold. Quantiles can be scalars or one probability per component; use None to disable either side. Fitting on a sequence pools observations while preserving component order. Probabilities must lie in [0, 1].

Signature parameters
ParameterTypeDefault
low_quantileBoundsNone
high_quantileBounds0.99

Members

component_keyattribute
capabilitiesattribute
capabilities = ComponentCapabilities(supports_sequences=True, supports_unordered_samples=False, requires_training=True)
fitmethod
fit(series: TimeSeries | Sequence[TimeSeries]) -> QuantileDetector

Fit thresholds using training scores only.

Signature parameters
ParameterTypeDefault
seriesTimeSeries | Sequence[TimeSeries]required

Returns QuantileDetector

detectmethod
detect(series: TimeSeries | Sequence[TimeSeries]) -> TimeSeries | list[TimeSeries]

Apply the fixed training thresholds to new observations.

Signature parameters
ParameterTypeDefault
seriesTimeSeries | Sequence[TimeSeries]required

Returns TimeSeries | list[TimeSeries]

fit_detectmethod
fit_detect(series: SeriesLike) -> TimeSeries | list[TimeSeries]

Fit and label the same input; use separate data when evaluating performance.

Signature parameters
ParameterTypeDefault
seriesSeriesLikerequired

Returns TimeSeries | list[TimeSeries]

TimeSeriesThresholdDetector

TimeSeriesThresholdDetector(low_threshold: Bounds = None, high_threshold: Bounds = None)

Bases: StaticThresholdDetector

Flag scores strictly below or above explicit component-wise bounds.

At least one of low_threshold and high_threshold is required. Each can be a scalar or one value per component. Equality is in bounds. Returns a binary TimeSeries (1 anomalous, 0 normal), retaining coordinates. This differs from the older table-oriented ThresholdDetector, which adds a column to a record table and uses an absolute-value threshold.

Signature parameters
ParameterTypeDefault
low_thresholdBoundsNone
high_thresholdBoundsNone

Members

component_keyattribute
component_key = 'timeseries_threshold'
capabilitiesattribute
capabilities = ComponentCapabilities(supports_sequences=True, supports_unordered_samples=False, requires_training=False)
detectmethod
detect(series: TimeSeries | Sequence[TimeSeries]) -> TimeSeries | list[TimeSeries]

Apply configured bounds to one or several independent score series.

Signature parameters
ParameterTypeDefault
seriesTimeSeries | Sequence[TimeSeries]required

Returns TimeSeries | list[TimeSeries]