CovSest {rrcov}R Documentation

S Estimates of Multivariate Location and Scatter

Description

Computes S-Estimates of multivariate location and scatter based on Tukey's biweight function using a fast algorithm similar to the one proposed by Salibian-Barrera and Yohai (2006) for the case of regression. Alternativley, the Ruppert's SURREAL algorithm, bisquare or Rocke type estimation can be used.

Usage

    CovSest(x, bdp = 0.5, arp = 0.1, eps = 1e-5, maxiter = 120, 
        nsamp = 500, seed = NULL, trace = FALSE, tolSolve = 1e-13, 
        method = c("sfast", "surreal", "bisquare", "rocke"), control,
        t0, S0, initcontrol)

Arguments

x a matrix or data frame.
bdp required breakdown point. Allowed values are between (n - p)/(2 * n) and 1 and the default is 0.5
arp a numeric value specifying the asympthotic rejection point (for the Rocke type S estimates), i.e. the fraction of points receiving zero weight (see Rocke (1996)). Default is 0.1
eps a numeric value specifying the relative precision of the solution of the S-estimate (bisquare and Rocke type). Defaults to 1e-5.
maxiter maximum number of iterations allowed in the computation of the S-estimate (bisquare and Rocke type). Defaults to 120.
nsamp the number of random subsets considered. Default is nsamp = 500
seed starting value for random generator. Default is seed = NULL.
trace whether to print intermediate results. Default is trace = FALSE.
tolSolve numeric tolerance to be used for inversion (solve) of the covariance matrix in mahalanobis.
method Which algorithm to use: 'sfast'=FAST-S, 'surreal'=SURREAL, 'bisquare' or 'rocke'
control a control object (S4) of class CovControlSest-class containing estimation options - same as these provided in the fucntion specification. If the control object is supplied, the parameters from it will be used. If parameters are passed also in the invocation statement, they will override the corresponding elements of the control object.
t0 optional initial HBDP estimate for the center
S0 optional initial HBDP estimate for the covariance matrix
initcontrol optional control object to be used for computing the initial HBDP estimates

Details

Computes biweight multivariate S-estimator of location and scatter. The computation will be performed by one of the following algorithms:

FAST-S
An algorithm similar to the one proposed by Salibian-Barrera and Yohai (2006) for the case of regression
SURREAL
Ruppert's SURREAL algorithm when method is set to 'surreal'
BISQUARE
Bisquare S-Estimate with method set to 'bisquare'
ROCKE
Rocke type S-Estimate with method set to 'rocke'
.

Value

An S4 object of class CovSest-class which is a subclass of the virtual class CovRobust-class.

Author(s)

Valentin Todorov valentin.todorov@chello.at and Matias Salibian-Barrera matias@stat.ubc.ca. See also the code from Kristel Joossens, K.U. Leuven, Belgium and Ella Roelant, Ghent University, Belgium.

References

H.P. Lopuhaä (1989) On the Relation between S-estimators and M-estimators of Multivariate Location and Covariance. Annals of Statistics 17 1662–1683.

D. Ruppert (1992) Computing S Estimators for Regression and Multivariate Location/Dispersion. Journal of Computational and Graphical Statistics 1 253–270.

M. Salibian-Barrera and V. Yohai (2006) A fast algorithm for S-regression estimates, Journal of Computational and Graphical Statistics, 15, 414–427.

R. A. Maronna, D. Martin and V. Yohai (2006). Robust Statistics: Theory and Methods. Wiley, New York.

Examples


library(rrcov)
data(hbk)
hbk.x <- data.matrix(hbk[, 1:3])
CovSest(hbk.x)

## the following four statements are equivalent
c0 <- CovSest(hbk.x)
c1 <- CovSest(hbk.x, bdp = 0.25)
c2 <- CovSest(hbk.x, control = CovControlSest(bdp = 0.25))
c3 <- CovSest(hbk.x, control = new("CovControlSest", bdp = 0.25))

## direct specification overrides control one:
c4 <- CovSest(hbk.x, bdp = 0.40,
             control = CovControlSest(bdp = 0.25))
c1
summary(c1)
plot(c1)

## Use the SURREAL algorithm of Ruppert
cr <- CovSest(hbk.x, method="surreal")
cr

## Use Bisquare estimation
cr <- CovSest(hbk.x, method="bisquare")
cr

## Use Rocke type estimation
cr <- CovSest(hbk.x, method="rocke")
cr


[Package rrcov version 0.5-01 Index]