View source: R/MMest_multireg.R
MMest_multireg | R Documentation |
Computes MM-Estimates of multivariate regression, using initial S-estimates
## S3 method for class 'formula'
MMest_multireg(formula, data=NULL, ...)
## Default S3 method:
MMest_multireg(X, Y, int = TRUE, control=MMcontrol(...),
na.action=na.omit, ...)
formula |
an object of class |
data |
data frame from which variables specified in formula are to be taken. |
X |
a matrix or data frame containing the explanatory variables (possibly including intercept). |
Y |
a matrix or data frame containing the response variables. |
int |
logical: if |
control |
a list with control parameters for tuning the MM-estimate and its computing algorithm,
see |
na.action |
a function which indicates what should happen when the data contain NAs. Defaults to |
... |
allows for specifying control parameters directly instead of via |
This function is called by FRBmultiregMM
.
The MM-estimates are defined by first computing S-estimates of regression, then fixing the scale component of the error covariance
estimate, and finally re-estimating the regression coefficients and the shape part of the error covariance by more efficient
M-estimates (see Tatsuoka and Tyler (2000) for MM-estimates in the special case of location/scatter estimation, and Van Aelst and
Willems (2005) for S-estimates of multivariate regression). Tukey's biweight is used for
the loss functions. By default, the first loss function (in the S-estimates) is tuned in order to obtain 50% breakdown point.
The default tuning of the second loss function (M-estimates) ensures 95% efficiency at the normal model for the coefficient estimates.
The desired efficiency can be changed via argument control
.
The computation of the S-estimates is performed by a call to Sest_multireg
, which uses the fast-S algorithm.
See MMcontrol
() to see or change the tuning parameters for this algorithm. The M-estimate part is computed
through iteratively reweighted least squares (RWLS).
Apart from the MM-estimate of the regression coefficients, the function returns both the MM-estimate of the error
covariance Sigma
and the corresponding shape estimate Gamma
(which has determinant equal to 1).
Additionally, the initial S-estimates are returned as well (their Gaussian efficiency is usually lower than the MM-estimates but they may
have a lower bias).
The returned object inherits from class mlm
such that the standard coef
, residuals
, fitted
and predict
functions can be used.
An object of class FRBmultireg
which extends class mlm
and contains at least the following components:
coefficients |
MM-estimates of the regression coefficients |
residuals |
the residuals, that is response minus fitted values |
fitted.values |
the fitted values. |
Sigma |
MM-estimate of the error covariance matrix |
Gamma |
MM-estimate of the error shape matrix |
scale |
S-estimate of the size of the multivariate errors |
weights |
implicit weights corresponding to the MM-estimates (i.e. final weights in the RWLS procedure) |
outFlag |
outlier flags: 1 if the robust distance of the residual exceeds the .975 quantile of (the square root of) the chi-square distribution with degrees of freedom equal to the dimension of the responses; 0 otherwise |
c0 , b , c1 |
tuning parameters of the loss functions (depend on control parameters |
method |
a list with following components: |
control |
a copy of the |
SBeta |
S-estimate of the regression coefficient matrix |
SSigma |
S-estimate of the error covariance matrix |
SGamma |
S-estimate of the error shape matrix |
Gert Willems, Stefan Van Aelst and Ella Roelant
K.S. Tatsuoka and D.E. Tyler (2000), The uniqueness of S and M-functionals under non-elliptical distributions. The Annals of Statistics, 28, 1219–1243.
S. Van Aelst and G. Willems (2005), Multivariate regression S-estimators for robust estimation and inference. Statistica Sinica, 15, 981–1001.
S. Van Aelst and G. Willems (2013), Fast and robust bootstrap for multivariate inference: The R package FRB. Journal of Statistical Software, 53(3), 1–32. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.18637/jss.v053.i03")}.
FRBmultiregMM
, MMboot_multireg
, Sest_multireg
, MMcontrol
data(schooldata)
school.x <- data.matrix(schooldata[,1:5])
school.y <- data.matrix(schooldata[,6:8])
## compute 95% efficient MM-estimates
MMres <- MMest_multireg(school.x,school.y)
## or using the formula interface
MMres <- MMest_multireg(cbind(reading,mathematics,selfesteem)~., data=schooldata)
## the MM-estimate of the regression coefficient matrix:
MMres$coefficients
## or alternatively
coef(MMres)
## Do plots
n <- nrow(schooldata)
oldpar <- par(mfrow=c(2,1))
## the estimates can be considered as weighted least squares estimates with the
## following implicit weights
plot(1:n, MMres$weights)
## Sres$outFlag tells which points are outliers based on whether or not their
## robust distance exceeds the .975 chi-square cut-off:
plot(1:n, MMres$outFlag)
## (see also the diagnostic plot in plotDiag())
par(oldpar)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.