Simplicial volume depth#

simplicialVolume(x, data, exact=True, k=0.05, mah_estimate='moment', mah_parMCD=0.75, seed=0)[source]#
Description

Calculates the simpicial volume depth of points w.r.t. a multivariate data set.

Arguments
x

Matrix of objects (numerical vector as one object) whose depth is to be calculated; each row contains a d-variate point. Should have the same dimension as data.

data

Matrix of data where each row contains a d-variate point, w.r.t. which the depth is to be calculated.

exact

exact=True (by default) implies the exact algorithm, exact=False implies the approximative algorithm, considering k simplices.

k
Number (k > 1) or portion (if 0 < k < 1) of simplices that are considered if exact = F.
If k > 1, then the algorithmic complexity is polynomial in d but is independent of the number of observations in data, given k.
If 0 < k < 1, then the algorithmic complexity is exponential in the number of observations in data, but the calculation precision stays approximately the same.
mah_estimate

A character string specifying affine-invariance adjustment; can be 'none', 'moment' or 'MCD', determining whether no affine-invariance adjustemt or moment or Minimum Covariance Determinant (MCD) estimates of the covariance are used. By default 'moment' is used.

mah_parMcd

The value of the argument alpha for the function covMcd is used when, mah.estimate='MCD'.

seed

The random seed. The default value seed=0 makes no changes.

References
  • Oja, H. (1983). Descriptive statistics for multivariate distributions. Statistics and Probability Letters, 1, 327–332.

Examples
>>> import numpy as np
>>> from depth.multivariate import *
>>> mat1=[[1, 0, 0],[0, 2, 0],[0, 0, 1]]
>>> mat2=[[1, 0, 0],[0, 1, 0],[0, 0, 1]]
>>> x = np.random.multivariate_normal([1,1,1], mat2, 10)
>>> data = np.random.multivariate_normal([0,0,0], mat1, 20)
>>> simplicalVolume(x, data, exact=True)
[0.45749049 0.34956166 0.2263421  0.68742137 0.94796538 0.51112415
 0.85250931 0.67914988 0.79165292 0.33192247]
>>> simplicalVolume(x, data, exact=False, k=0.2)
[0.46826813 0.40138917 0.23189724 0.69025277 0.938543   0.56005713
 0.8113647  0.72220103 0.82036139 0.33908597]