powerShape: M-estimators of Shape from the Power Family.

Description Usage Arguments Details Value References See Also Examples

View source: R/powerShape.R

Description

Power M-estimators of shape and location were recently suggested in Frahm et al. (2020). They have a tuning parameter alpha taking values in [0,1]. The extreme case alpha = 1 corresponds to Tyler's shape matrix and alpha = 0 to the classical covariance matrix. These special cases have their own, more efficient functions tylerShape and classicShape, respectively. If the true location is known, it should be supplied as center, otherwise it is estimated simultaneously with the shape.

Usage

1
2
3
4
5
6
7
8
powerShape(x, alpha, center = NULL,
    normalization = c("det", "trace", "one"), maxiter = 1e4, eps = 1e-6)

tylerShape(x, center = NULL,
    normalization = c("det", "trace", "one"), maxiter = 1e4, eps = 1e-6)

classicShape(x, center = NULL,
    normalization = c("det", "trace", "one"), maxiter = 1e4, eps = 1e-6)

Arguments

x

A numeric data matrix or data.frame without missing data.

alpha

Tail index, a numeric value in the interval [0, 1]. Determines the power function. For more information see 'Details'.

center

An optional vector of the data's center. If NULL the center will be estimated simultaneously with the shape.

normalization

A string determining how the shape matrix is standardized. The possible values are

  • 'det'such that the returned shape estimate has determinant 1.

  • 'trace'such that the returned shape estimate has trace ncol(x).

  • 'one'such that the returned shape estimate's top left entry (S[1, 1]) is 1.

maxiter

A positive integer, restricting the maximum number of iterations.

eps

A numeric, specifying the tolerance level of when the iteration stops.

Details

These functions assume that the data were generated from an elliptical distribution, for Tyler's estimate this can be relaxed to generalized elliptical distributions.

For multivariate normally distributed data, classicShape is the maximum likelihood estimator of location and scale. It is a special case of the power M-estimator with tail index alpha = 0, which returns the empirical covariance matrix and the empirical mean vector.

The function tylerShape maximizes the likelihood function after projecting the observed data of each individual onto the unit hypersphere, in which case we obtain an angular central Gaussian distribution. It is a special case of the power M-estimator with tail index alpha = 1, which returns Tyler's M-estimator of scatter and an affine equivariant multivariate median according to Hettmansperger and Randles (2002).

The function powerShape requires an additional parameter, the so-called tail index alpha. For heavy tailed data, the index should be chosen closer to 1, whereas for light tailed data the index should be chosen closer to 0.

Value

A list with class 'shapeNA' containing the following components:

S

The estimated shape matrix.

scale

The scale with which the shape matrix may be scaled to obtain a scatter estimate. If alpha = 1, then this value is NA, as Tyler's shape matrix has no natural scale.

mu

The location parameter, either provided by the user or estimated.

alpha

The tail index with which the Power M-estimator has been called.

naBlocks

NULL, since powerShape operates only on complete data.

iterations

Number of computed iterations before convergence.

call

The matched call.

References

Tyler, D.E. (1987). A Distribution-Free M-Estimator of Multivariate Scatter. The Annals of Statistics, 15, 234.251. doi: 10.1214/aos/1176350263.

Frahm, G., Nordhausen, K., & Oja, H. (2020). M-estimation with incomplete and dependent multivariate data. Journal of Multivariate Analysis, 176, 104569. doi: 10.1016/j.jmva.2019.104569.

Hettmansperger, T. P., & Randles, R. H. (2002). A practical affine equivariant multivariate median. Biometrika, 89(4), 851-860. doi: 10.1093/biomet/89.4.851

See Also

powerShapeNA, tylerShapeNA and classicShapeNA for the corresponding functions for data with missing values.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
    ## Generate example data
    S <- toeplitz(c(1, 0.1))
    x <- mvtnorm::rmvt(100, S)
    ## Compute some M-estimators
    res0 <- classicShape(x, center = c(0, 0))
    res1 <- powerShape(x, alpha = 0.67, normalization = 'one')
    res2 <- tylerShape(x, normalization = 'trace')
    ## Get location estimates
    res1$mu
    res2$mu
    ## Get shape estimates
    res0$S
    res1$S
    res2$S
    ## Print summary
    summary(res0)

shapeNA documentation built on March 15, 2021, 5:06 p.m.

Related to powerShape in shapeNA...