View source: R/depth.halfspace.r

depth.halfspace | R Documentation |

Calculates the exact or random Tukey (=halfspace, location) depth (Tukey, 1975) of points w.r.t. a multivariate data set.

```
depth.halfspace(x, data, exact, method, num.directions = 1000, seed = 0)
```

`x` |
Matrix of objects (numerical vector as one object) whose depth is to be calculated; each row contains a |

`data` |
Matrix of data where each row contains a |

`exact` |
The type of the used method. The default is |

`method` |
For For The name of the method may be given as well as just parameter |

`num.directions` |
Number of random directions to be generated (for |

`seed` |
The random seed. The default value |

For `exact=F`

, if `method="Sunif.1D"`

, the Tukey depth is computed approximately using the random Tukey depth method proposed by Cuesta-Albertos and Nieto-Reyes (2008). Here the depth is determined as the minimum univariate Tukey depth of the - on lines in several directions - projected data. The directions are distributed uniformly on the `(d-1)`

-sphere; the same direction set is used for all points.

For `exact=T`

, the Tukey depth is computed exactly as the minimum of the sum of the depths in two orthogonal complementary affine subspaces, which dimensions add to `d`

: one of the subspaces (combinatorial) is the `k`

-dimensional hyperplane through (a point from) `x`

and `k`

points from `data`

, another one is its orthogonal complement (see Dyckerhoff and Mozharovskyi, 2016 for the detailed description of the algorithmic framework). The algorithm then minimizes the depth over all combinations of `k`

points, in which the depth in the orthogonal complements is computed using an exact algorithm. In this case, parameter `method`

specifies the dimensionality `k`

of the combinatorial space. The implemented (reasonable) algorithms (and corresponding names) are: `k=1`

(or `method="recursive"`

), `k=d-2`

(or `method="plane"`

), and `k=d-1`

(or `method="line"`

).

Numerical vector of depths, one for each row in `x`

; or one depth value if `x`

is a numerical vector.

Cuesta-Albertos, J.A. and Nieto-Reyes, A. (2008). The random Tukey depth. *Computational Statistics and Data Analysis* **52** 4979–4988.

Dyckerhoff, R. and Mozharovskyi, P. (2016). Exact computation of the halfspace depth. *Computational Statistics and Data Analysis* **98** 19–30.

Rousseeuw, P.J. and Ruts, I. (1996). Algorithm AS 307: Bivariate location depth. *Journal of the Royal Statistical Society. Seriec C (Applied Statistics)* **45** 516–526.

Tukey, J.W. (1974). Mathematics and the picturing of data. In: *Proceeding of the International Congress of Mathematicians*, Vancouver, 523–531.

`depth.Mahalanobis`

for calculation of Mahalanobis depth.

`depth.projection`

for calculation of projection depth.

`depth.simplicial`

for calculation of simplicial depth.

`depth.simplicialVolume`

for calculation of simplicial volume depth.

`depth.spatial`

for calculation of spatial depth.

`depth.zonoid`

for calculation of zonoid depth.

`depth.potential`

for calculation of data potential.

```
# 3-dimensional normal distribution
data <- mvrnorm(200, rep(0, 3),
matrix(c(1, 0, 0,
0, 2, 0,
0, 0, 1),
nrow = 3))
x <- mvrnorm(10, rep(1, 3),
matrix(c(1, 0, 0,
0, 1, 0,
0, 0, 1),
nrow = 3))
# default - random Tukey depth
depths <- depth.halfspace(x, data)
cat("Depths: ", depths, "\n")
# default exact method - "recursive"
depths <- depth.halfspace(x, data, exact = TRUE)
cat("Depths: ", depths, "\n")
# method "line"
depths <- depth.halfspace(x, data, method = "line")
cat("Depths: ", depths, "\n")
```

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.