pyriemann.utils.median_euclid(X, *, tol=1e-05, maxiter=50, init=None, weights=None)

Euclidean geometric median of matrices.

The Euclidean geometric median minimizes the sum of Euclidean distances \(d_E\) to all matrices [1] [2]:

\[\arg \min_{\mathbf{M}} \sum_i w_i \ d_E (\mathbf{M}, \mathbf{X}_i)\]

Geometric median is different from the marginal median provided by NumPy [3].

Xndarray, shape (n_matrices, n, m)

Set of matrices.

tolfloat, default=10e-6

The tolerance to stop the iterative algorithm.

maxiterint, default=50

The maximum number of iterations.

initNone | ndarray, shape (n, m), default=None

A matrix used to initialize the iterative algorithm. If None, the weighted Euclidean mean is used.

weightsNone | ndarray, shape (n_matrices,), default=None

Weights for each matrix. If None, it uses equal weights.

Mndarray, shape (n, m)

Euclidean geometric median.


New in version 0.4.



Sur le point pour lequel la somme des distances de n points donnés est minimum E Weiszfeld. Tohoku Mathematical Journal, 1937, 43, pp. 355-386.


The multivariate L1-median and associated data depth Y Vardi and C-H Zhan. Proceedings of the National Academy of Sciences, 2000, vol. 97, no 4, p. 1423-1426