raw_outlier_policy#
Back to L1 | Browse all axes | Browse all options
Axis
raw_outlier_policyon sub-layerl1_c(layerl1).
Sub-layer#
l1_c
Axis metadata#
Default:
'preserve_raw_outliers'Sweepable: False
Status: operational
Operational status summary#
Operational: 6 option(s)
Future: 0 option(s)
Options#
preserve_raw_outliers – operational#
Pass raw outliers through to L2.C.
Default; relies on L2.C McCracken-Ng IQR detection and the configured outlier_action to handle extreme values. See also: L2 outlier_policy / outlier_action (same surface, different stage: raw vs post-tcode).
When to use
Default; the canonical workflow.
References
macroforecast design Part 1, L1: ‘data definition is the recipe layer that pins source, target, geography, and horizon – everything downstream branches off these choices.’
Related options: winsorize_raw, iqr_clip_raw, mad_clip_raw, zscore_clip_raw, set_raw_outliers_to_missing
Last reviewed 2026-05-05 by macroforecast author.
winsorize_raw – operational#
Winsorise raw series at quantile cutpoints (default p1 / p99).
Caps extreme values at the specified quantile before t-coding. Preserves observation count but compresses tails. Configured via leaf_config.winsorize_quantiles (default [0.01, 0.99]). Compare: L2 outlier_policy=winsorize operates on the post-tcode panel.
When to use
Heavy-tailed financial / macro series where extreme observations would dominate downstream estimates.
References
macroforecast design Part 1, L1: ‘data definition is the recipe layer that pins source, target, geography, and horizon – everything downstream branches off these choices.’
Related options: preserve_raw_outliers, iqr_clip_raw
Parameters
name |
type |
default |
constraint |
description |
|---|---|---|---|---|
|
|
|
0 <= low < high <= 1; both elements required. |
Lower and upper quantile clip thresholds. Defaults to symmetric 1%/99% winsorization. Values outside [low, high] quantile bounds are clipped to the bound value. |
Last reviewed 2026-05-05 by macroforecast author.
iqr_clip_raw – operational#
Clip raw observations beyond k×IQR thresholds.
Clips values outside Q1 - k·IQR, Q3 + k·IQR (k default 10.0, matching McCracken-Ng). Robust to non-Gaussian distributions. Configured via leaf_config.outlier_iqr_threshold. Compare: L2 outlier_policy=mccracken_ng_iqr uses the same k but on the post-tcode panel.
When to use
Robust outlier handling on non-normal series.
References
macroforecast design Part 1, L1: ‘data definition is the recipe layer that pins source, target, geography, and horizon – everything downstream branches off these choices.’
Related options: winsorize_raw, mad_clip_raw, zscore_clip_raw
Parameters
name |
type |
default |
constraint |
description |
|---|---|---|---|---|
|
|
|
>0 |
IQR multiplier above which raw observations are clipped. McCracken-Ng default is 10.0. Observations satisfying |
Last reviewed 2026-05-05 by macroforecast author.
mad_clip_raw – operational#
Clip raw observations beyond k×MAD thresholds.
Median Absolute Deviation -based clipping; even more robust than IQR. Default k = 3 maps to roughly 3σ for normal data.
When to use
Highly non-Gaussian series with sparse outliers.
References
macroforecast design Part 1, L1: ‘data definition is the recipe layer that pins source, target, geography, and horizon – everything downstream branches off these choices.’
Related options: iqr_clip_raw, zscore_clip_raw
Last reviewed 2026-05-05 by macroforecast author.
zscore_clip_raw – operational#
Clip raw observations beyond k standard deviations.
Standard z-score rule (typically k = 3). Cheapest option but assumes approximate normality. Configured via leaf_config.zscore_threshold_value.
When to use
Approximately Gaussian series; quick baseline.
When NOT to use
Heavy-tailed series – use iqr_clip_raw or mad_clip_raw.
References
macroforecast design Part 1, L1: ‘data definition is the recipe layer that pins source, target, geography, and horizon – everything downstream branches off these choices.’
Related options: iqr_clip_raw, mad_clip_raw
Parameters
name |
type |
default |
constraint |
description |
|---|---|---|---|---|
|
|
|
>0 |
Z-score threshold; observations with |
Last reviewed 2026-05-05 by macroforecast author.
set_raw_outliers_to_missing – operational#
Set raw outliers to NaN and defer to L2.D imputation.
Replaces flagged outliers with NaN. The L2.D imputation method then fills the resulting gaps; preserves observation count for downstream stages.
When to use
Pipelines where outliers should be re-imputed coherently with other missing data.
References
macroforecast design Part 1, L1: ‘data definition is the recipe layer that pins source, target, geography, and horizon – everything downstream branches off these choices.’
Related options: preserve_raw_outliers, winsorize_raw
Last reviewed 2026-05-05 by macroforecast author.