[R] Subject: Suggestion regarding default MAD constant

Peter Dalgaard pd@|gd @end|ng |rom gm@||@com
Mon Oct 5 13:25:17 CEST 2026


The constant= bit comes from

> 1/diff(qnorm(c(.25,.75))/2)
[1] 1.482602

so the logic is pretty much that mad() computes the SD of a normal distribution with the same IQR. This makes sense for an outlier-contaminated normal distribution, and not so much elsewhere. 

It is fairly easy to modify the constant for other symmetric distributions like the standardized t distribution, somewhat less so for asymmetric distributions. That is, provided you actually want the SD of the underlying distribution (sans outliers).

If you set mad=1, then you lose the connection with SD, which may not be much of a loss. However, the question that I see is whether it offers anything beyond the simple IQR.

- Peter D.


> On 20 Sep 2026, at 09.48, Thomas Subia via R-help <r-help using r-project.org> wrote:
> 
> Hi all,
> 
> While working with signed-error distributions that are often skewed, I noticed
> that using `mad(x)` with the default constant (1.4826) can unintentionally widen 
> the dispersion estimate enough to mask important structure in the data.
> 
> For diagnostic and tolerance-testing workflows, especially when symmetry cannot
> be assumed, using `mad(x, constant = 1)` gives a more interpretable “bulk”
> interval because it reflects the raw median absolute deviation without scaling
> to a normal model.
> 
> Before applying any parametric center/spread metrics, I’ve found it helpful to
> plot a boxplot or ECDF to check for skew and tail weight. In skewed cases,
> `constant = 1` behaves more robustly.
> 
> Is there any interest in discussing whether `constant = 1` might be a more
> appropriate default for nonparametric workflows, or whether a note in the
> documentation might help users choose the right constant for their context?
> 
> Thanks,
> Thomas
> 
> [[alternative HTML version deleted]]
> 
> ______________________________________________
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide https://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

-- 
Peter Dalgaard, Professor,
Center for Statistics, Copenhagen Business School
Solbjerg Plads 3, 2000 Frederiksberg, Denmark
Office: A 4.23
Email: pd.mes using cbs.dk  Priv: PDalgd using gmail.com



More information about the R-help mailing list