Mahalanobis distances from center of indexed points

Share:

Description

Computes the vector of (classical or robust) Mahalanobis distances of all points of x to the center of the points indexed (or weighted) by gv. The latter also determine the covariance matrix.

Thought for use within fixmahal.

Usage

1
2
3
4
5
mahalanofix(x, n = nrow(as.matrix(x)), p = ncol(as.matrix(x)), gv =
rep(1, times = n), cmax = 1e+10, method = "ml")

mahalanofuz(x, n = nrow(as.matrix(x)), p = ncol(as.matrix(x)),
                         gv = rep(1, times=n), cmax = 1e+10) 

Arguments

x

a numerical data matrix, rows are points, columns are variables.

n

positive integer. Number of points.

p

positive integer. Number of variables.

gv

for mahalanofix a logical or 0-1 vector of length n. For mahalanofuz a numerical vector with values between 0 and 1.

cmax

positive number. used in solvecov if covariance matrix is singular.

method

"ml", "classical", "mcd" or "mve". Method to compute the covariance matrix estimator. See cov.rob, fixmahal.

Details

solvecov is used to invert the covariance matrix. The methods "mcd" and "mve" in mahalanofix do not work properly with point constellations with singular covariance matrices!

Value

A list of the following components:

md

vector of Mahalanobis distances.

mg

mean of the points indexed by gv, weighted mean in mahalanofuz.

covg

covariance matrix of the points indexed by gv, weighted covariance matrix in mahalanofuz.

covinv

covg inverted by solvecov.

coll

logical. If TRUE, covg has been (numerically) singular.

Note

Methods "mcd" and "mve" require library lqs.

Author(s)

Christian Hennig c.hennig@ucl.ac.uk http://www.homepages.ucl.ac.uk/~ucakche/

See Also

fixmahal, solvecov, cov.rob

Examples

1
2
3
4
5
6
  x <- c(1,2,3,4,5,6,7,8,9,10)
  y <- c(1,2,3,8,7,6,5,8,9,10)
  mahalanofix(cbind(x,y),gv=c(0,0,0,1,1,1,1,1,0,0))
  mahalanofix(cbind(x,y),gv=c(0,0,0,1,1,1,1,0,0,0))
  mahalanofix(cbind(x,y),gv=c(0,0,0,1,1,1,1,1,0,0),method="mcd")
  mahalanofuz(cbind(x,y),gv=c(0,0,0.5,0.5,1,1,1,0.5,0.5,0))

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.