Learn R Programming

robustbase (version 0.93-6)

covComed: Co-Median Location and Scatter "Covariance" Estimator

Description

Compute (versions of) the (multivariate) “Comedian” covariance, i.e., multivariate location and scatter estimator

Usage

covComed(X, n.iter = 2, reweight = FALSE, tolSolve = control$tolSolve,
         trace = control$trace, wgtFUN = control$wgtFUN,
         control = rrcov.control())

Arguments

X

data matrix of dimension, say \(n \times p\).

n.iter

number of comedian() iterations. Can be as low as zero.

reweight

logical indicating if the final distances and weights should be recomputed from the final cov and center. The default is currently FALSE because that was implicit in the first version of the R code.

tolSolve

a numerical tolerance passed to solve.

trace

logical (or integer) indicating if intermediate results should be printed; defaults to FALSE; values \(\ge 2\) also produce print from the internal (Fortran) code.

wgtFUN

a character string or function, specifying how the weights for the reweighting step should be computed. The default, wgtFUN = "01.original" corresponds to 0-1 weights as proposed originally. Other predefined string options are available, though experimental, see the experimental .wgtFUN.covComed object.

control

a list with estimation options - this includes those above provided in the function specification, see rrcov.control for the defaults. If control 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.

Value

an object of class "covComed" which is basically a list with components

comp1

Description of 'comp1'

comp2

Description of 'comp2'

... FIXME ...

Details

.. not yet ..

References

Falk, M. (1997) On mad and comedians. Annals of the Institute of Statistical Mathematics 49, 615--644.

Falk, M. (1998). A note on the comedian for elliptical distributions. Journal of Multivariate Analysis 67, 306--317.

See Also

covMcd, etc

Examples

Run this code
# NOT RUN {
data(hbk)
hbk.x <- data.matrix(hbk[, 1:3])
(cc1 <- covComed(hbk.x))
(ccW <- covComed(hbk.x, reweight=TRUE))
cc0  <- covComed(hbk.x, n.iter=0)
cc0W <- covComed(hbk.x, n.iter=0, reweight=TRUE)

stopifnot(all.equal(unclass(cc0), # here, the 0-1 weights don't change:
                    cc0W[names(cc0)], tol=1e-12),
          which(cc1$weights == 0) == 1:14,
          which(ccW$weights == 0) == 1:14,
          which(cc0$weights == 0) == 1:14)
# }
# NOT RUN {
<!-- %% TODO : more -->
# }
# NOT RUN {
## Martin's smooth reweighting:

## List of experimental pre-specified wgtFUN() creators:
## Cutoffs may depend on  (n, p, control$beta) :
str(.wgtFUN.covComed)
# }

Run the code above in your browser using DataLab