image thumbnail

Detect outliers in multivariate datasets

version (9.02 KB) by Anton Semechko
Compute robust estimates of mean and covariance, and flag potential multivariate outliers


Updated 04 Sep 2020

From GitHub

View license on GitHub


View Detect outliers in multivaraite datasets on File Exchange

This submission contains Matlab implementation of an iterative multivariate outlier detection algorithm described in Hadi (1992) [1]. In addition to flagging potential outliers, the main function DetectMultVarOutliers.m also outputs robust estimates of the mean and covariance that it computes during execution.

Deviating slightly from Hadi (1992), DetectMultVarOutliers.m initializes the sample mean with the geometric median of the dataset, instead of the coordinate-wise median. GeometricMedian.m is the function used compute this robust statistic; via the Weiszfeld's algorithm [2]. Note that this auxiliary function can be used on its own in any application that requires robust estimation of central tendency of multivariate data corrupted by sampling errors and/or noise.

For a quick demo on how to use the main function, see source code for outliers_demo.m or simply enter outliers_demo into Matlab command window.


[1] Hadi, A.S., 1992. Identifying multiple outliers in multivariate data. Journal of the Royal Statistical Society. Series B (Methodological), Vol. 54(3), pp. 761-771.

[2] Weiszfeld, E., 1937. Sur le point par lequel la somme des distances den points donnés est minimum. Tohoku Mathematics Journal, Vol. 43, pp. 355–386.


MIT © 2019 Anton Semechko

Cite As

Anton Semechko (2021). Detect outliers in multivariate datasets (, GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2015a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.