mahalanobis {stats}  R Documentation 
Returns the squared Mahalanobis distance of all rows in x
and the
vector mu = center
with respect to
Sigma = cov
.
This is (for vector x
) defined as
D^2 = (x  μ)' Σ^1 (x  μ)
mahalanobis(x, center, cov, inverted = FALSE, ...)
x 
vector or matrix of data with, say, p columns. 
center 
mean vector of the distribution or second data vector of
length p or recyclable to that length. If set to

cov 
covariance matrix (p x p) of the distribution. 
inverted 
logical. If 
... 
passed to 
require(graphics) ma < cbind(1:6, 1:3) (S < var(ma)) mahalanobis(c(0, 0), 1:2, S) x < matrix(rnorm(100*3), ncol = 3) stopifnot(mahalanobis(x, 0, diag(ncol(x))) == rowSums(x*x)) ## Here, D^2 = usual squared Euclidean distances Sx < cov(x) D2 < mahalanobis(x, colMeans(x), Sx) plot(density(D2, bw = 0.5), main="Squared Mahalanobis distances, n=100, p=3") ; rug(D2) qqplot(qchisq(ppoints(100), df = 3), D2, main = expression("QQ plot of Mahalanobis" * ~D^2 * " vs. quantiles of" * ~ chi[3]^2)) abline(0, 1, col = 'gray')