| Sest_multireg {FRB} | R Documentation |
Computes S-Estimates of multivariate regression based on Tukey's biweight function using the fast-S algorithm.
Sest_multireg(X, Y, bdp = 0.5, control=Scontrol(...), ...)
X |
a matrix or data frame containing the explanatory variables (possibly including intercept). |
Y |
a matrix or data frame containing the response variables. |
bdp |
required breakdown point. Should have 0 < bdp <= 0.5, the default is 0.5. |
control |
a list with control parameters for tuning the computing algorithm, see Scontrol(). |
... |
allows for specifying control parameters directly instead of via control |
This function is called by FRBmultiregS.
S-estimates for multivariate regression were discussed in Van Aelst and Willems (2005). The algorithm used here is a multivariate
version of the fast-S algorithm introduced by Salibian-Barrera and Yohai (2006).
See Scontrol for the adjustable tuning parameters of this algorithm.
Apart from the regression coefficients Beta, the function both returns the error covariance matrix estimate Sigma and
the corresponding shape estimate Gamma (which has determinant equal to 1).
The scale is determined by det(Sigma)^{1/2/q}, with q the number of response variables.
Beta |
S-estimate of the regression coefficient matrix |
Gamma |
S-estimate of the error shape matrix |
Sigma |
S-estimate of the error covariance matrix |
scale |
S-estimate of the error scale (univariate) |
b,c |
tuning parameters used in Tukey biweight loss function, as determined by bdp |
w |
implicit weights corresponding to the S-estimates (i.e. final weights in the RWLS procedure at the end of the fast-S algorithm) |
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 |
Gert Willems and Ella Roelant
FRBmultiregS, Sboot_multireg, MMest_multireg, Scontrol
data(schooldata) school.x <- data.matrix(schooldata[,1:5]) school.y <- data.matrix(schooldata[,6:8]) # compute 25% breakdown S-estimates Sres <- Sest_multireg(school.x,school.y, bdp=0.25) # the regression coefficients: Sres$Beta n <- nrow(school.x) par(mfrow=c(2,1)) # the estimates can be considered as weighted least squares estimates with the # following implicit weights plot(1:n, Sres$w) # 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, Sres$outFlag) # (see also the diagnostic plot in plotDiag())