Obtains a robust estimate of the covariance matrix of a
sample of multivariate data, using Campbell's (1980)
method as described on p231-235 of Krzanowski (1988).
Usage
robCov(sY, alpha = 2, beta = 1.25)
Arguments
sY
A matrix, where each column is a replicate
observation on a multivariate r.v.
alpha
tuning parameter, see details.
beta
tuning parameter, see details.
Value
A list where:
Ea square root of
the inverse covariance matrix. i.e. the inverse cov
matrix is t(E)%*%E;
half.ldet.VHalf the log of the determinant
of the covariance matrix;
mYThe estimated
mean;
sdThe estimated standard deviations
of each variable.
Details
Campbell (1980) suggests an estimator of the covariance
matrix which downweights observations at more than some
Mahalanobis distance d.0 from the mean.
d.0 is sqrt(nrow(sY))+alpha/sqrt(2).
Weights are one for observations with Mahalanobis
distance, d, less than d.0. Otherwise
weights are d.0*exp(-.5*(d-d.0)^2/beta)/d. The
defaults are as recommended by Campbell. This routine
also uses pre-conditioning to ensure good scaling and
stable numerical calculations.