covOGK  R Documentation 
Computes the orthogonalized pairwise covariance matrix estimate described in in Maronna and Zamar (2002). The pairwise proposal goes back to Gnanadesikan and Kettenring (1972).
covOGK(X, n.iter = 2, sigmamu, rcov = covGK, weight.fn = hard.rejection, keep.data = FALSE, ...) covGK (x, y, scalefn = scaleTau2, ...) s_mad(x, mu.too = FALSE, na.rm = FALSE) s_IQR(x, mu.too = FALSE, na.rm = FALSE)
X 
data in something that can be coerced into a numeric matrix. 
n.iter 
number of orthogonalization iterations. Usually 1 or 2; values greater than 2 are unlikely to have any significant effect on the estimate (other than increasing the computing time). 
sigmamu, scalefn 
a function that computes univariate robust
location and scale estimates. By default it should return a single
numeric value containing the robust scale (standard deviation)
estimate. When 
rcov 
function that computes a robust covariance estimate
between two vectors. The default, GnanadesikanKettenring's

weight.fn 
a function of the robust distances and the number of variables p to compute the weights used in the reweighting step. 
keep.data 
logical indicating if the (untransformed) data matrix

... 
additional arguments; for 
x,y 
numeric vectors of the same length, the covariance of which
is sought in 
mu.too 
logical indicating if both location and scale should be
returned or just the scale (when 
na.rm 
if 
Typical default values for the function arguments
sigmamu
, rcov
, and weight.fn
, are
available as well, see the Examples below,
but their names and calling sequences are
still subject to discussion and may be changed in the future.
The current default, weight.fn = hard.rejection
corresponds to
the proposition in the litterature, but Martin Maechler strongly
believes that the hard threshold currently in use is too arbitrary,
and further that soft thresholding should be used instead, anyway.
covOGK()
currently returns a list with components
center 
robust location: numeric vector of length p. 
cov 
robust covariance matrix estimate: p x p matrix. 
wcenter, wcov 
reweighted versions of 
weights 
the robustness weights used. 
distances 
the mahalanobis distances computed using

......
but note that this might be radically changed to returning an
S4 classed object!
covGK()
is a trivial 1line function returning the covariance
estimate
c^(x,y) = [s^(x+y)^2  s^(xy)^2]/4,
where s^(u) is the scale estimate of u
specified by scalefn
.
s_mad()
, and s_IQR()
return the
scale estimates mad
or IQR
respectively, where the s_*
functions return a length2 vector
(mu, sig) when mu.too = TRUE
, see also scaleTau2
.
Kjell Konis konis@stats.ox.ac.uk, with modifications by Martin Maechler.
Maronna, R.A. and Zamar, R.H. (2002) Robust estimates of location and dispersion of highdimensional datasets; Technometrics 44(4), 307–317.
Gnanadesikan, R. and John R. Kettenring (1972) Robust estimates, residuals, and outlier detection with multiresponse data. Biometrics 28, 81–124.
scaleTau2
,
covMcd
, cov.rob
.
data(hbk) hbk.x < data.matrix(hbk[, 1:3]) cO1 < covOGK(hbk.x, sigmamu = scaleTau2) cO2 < covOGK(hbk.x, sigmamu = s_Qn) cO3 < covOGK(hbk.x, sigmamu = s_Sn) cO4 < covOGK(hbk.x, sigmamu = s_mad) cO5 < covOGK(hbk.x, sigmamu = s_IQR) data(toxicity) cO1tox < covOGK(toxicity, sigmamu = scaleTau2) cO2tox < covOGK(toxicity, sigmamu = s_Qn) ## nice formatting of correlation matrices: as.dist(round(cov2cor(cO1tox$cov), 2)) as.dist(round(cov2cor(cO2tox$cov), 2)) ## "graphical" symnum(cov2cor(cO1tox$cov)) symnum(cov2cor(cO2tox$cov), legend=FALSE)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.