Hodges-Lehmann Estimator
The Hodges–Lehmann Estimator (pseudo-median) is a robust measure of location and location shift. Can be used as a median, average, or central tendency estimator.
For a single sample $\mathbf{x} = ( x_1, x_2, \ldots, x_n )$, it is defined as the median of the Walsh Averages:
$$ \operatorname{HL}(\mathbf{x}) = \underset{1 \leq i \leq j \leq n}{\operatorname{median}} \left(\frac{x_i + x_j}{2} \right). $$For two samples $\mathbf{x} = ( x_1, x_2, \ldots, x_n )$ and $\mathbf{y} = ( y_1, y_2, \ldots, y_m )$, the Hodges-Lehmann location shift estimator is defined as follows:
$$ \operatorname{HL}(\mathbf{x}, \mathbf{y}) = \underset{1 \leq i \leq n,\,\, 1 \leq j \leq m}{\operatorname{median}} \left(x_i - y_j \right). $$Asymptotic breakdown point: $\approx 29\%$; asymptotic Gaussian efficiency: $\approx 96\%$.
References
Original papers:
Estimates of Location Based on Rank Tests · 1963
· J L Hodges
et al.
On the Estimation of Relative Potency in Dilution (-Direct) Assays by Distribution-Free Methods · 1963
· Pranab Kumar Sen
Posts:
Understanding the pitfalls of preferring the median over the mean · 2023-06-20
Median vs. Hodges-Lehmann · 2023-11-14
Hodges-Lehmann Gaussian efficiency · 2023-09-12
Statistical efficiency of the Hodges-Lehmann median estimator, Part 1 · 2022-05-17
Statistical efficiency of the Hodges-Lehmann median estimator, Part 2 · 2022-05-24
Implementations
R implementation (the default one is buggy):
hl <- function(x, y = NULL) {
if (is.null(y)) {
walsh <- outer(x, x, "+") / 2
median(walsh[lower.tri(walsh, diag = TRUE)])
} else {
median(outer(x, y, "-"))
}
}