dr.weights.Rd
This function estimate weights to apply to the rows of a data matrix to make the resulting weighted matrix as close to elliptically symmetric as possible.
dr.weights(formula, data = list(), subset, na.action = na.fail,
sigma=1, nsamples=NULL, ...)
A one-sided or two-sided formula. The right hand side is used to define the design matrix.
An optional data frame.
A list of cases to be used in computing the weights.
The default is na.fail, to prohibit computations. If set to na.omit, the function will return a list of weights of the wrong length for use with dr.
The weights are determined by random sampling from a data-determined normal distribution. This controls the number of samples. The default is 10 times the number of cases.
Scale factor, set to one by default; see the paper by Cook and Nachtsheim for more information on choosing this parameter.
Arguments are passed to cov.rob
to compute a
robust estimate of the covariance matrix.
The basic outline is: (1) Estimate a mean m and covariance matrix S using a
possibly robust method; (2) For each iteration, obtain a random vector
from N(m,sigma*S). Add 1 to a counter for observation i if the i-th row
of the data matrix is closest to the random vector; (3) return as weights
the sample faction allocated to each observation. If you set the keyword
weights.only
to T
on the call to dr
, then only the
list of weights will be returned.
Returns a list of \(n\) weights, some of which may be zero.
R. D. Cook and C. Nachtsheim (1994), Reweighting to achieve elliptically contoured predictors in regression. Journal of the American Statistical Association, 89, 592–599.
dr
, cov.rob