1
$\begingroup$

Currently I am using Cook's distance to detect outliers in multivariate data. Is there any better approach than Cook's distance for the same?

$\endgroup$
0
$\begingroup$

An alternative could be the Mahalanobis' Distance to detect outliers.

Basically, this metric gives the distance for every point to the gravity center and help you identify the outliers by selecting the larger distances. One thing to note about this distance is that it works with the covariance matrix.

Therfore, it takes care for "ellipsoid" dataset and adjust the distance result with the width of the ellipsoid in the direction of the tested point. That means that it assure you to identify real outliers outside of the given distribution of your data.

$\endgroup$
  • $\begingroup$ Can we use Mahalanobis' Distance if there are categorical variables in the data? $\endgroup$ – darkage Dec 11 '17 at 9:58
  • $\begingroup$ Yes, but not directly. You first need to preprocess the categorical features and convert them in numerical features. One popular way is to do what's called "One-Hot encoding" which binarize every modalilties of your categorical features in new features. With that, you can now calculate "distances" on your dataset, like the mahalanobis one. $\endgroup$ – matlabat Dec 12 '17 at 14:19
0
$\begingroup$

Generally speaking, outlier detection corresponds to low-probability density detection; i.e., reject points where the PDF is "small". Cook's Distance and Mahalanobis' Distance correspond to parametric model's in that they assume the data should correspond to some underlying distribution or model. There are many other possibilities out there, like LOF (local outlier factor), using some form of explicit density estimation followed by rejection, using one-class SVM, etc.

If you know what is the underlying model that your data should follow, then you should definitely leverage that in terms of getting better results (i.e., parameteric density estimation will beat out non-parameteric if you have the right model).

$\endgroup$

Not the answer you're looking for? Browse other questions tagged or ask your own question.