FRBmultiregMM: MM-Estimates for Multivariate Regression with Bootstrap...

Description Usage Arguments Details Value Author(s) References See Also Examples

View source: R/FRBmultiregMM.R

Description

Computes MM-estimates for multivariate regression together with standard errors, confidence intervals and p-values based on the Fast and Robust Bootstrap.

Usage

1
2
3
4
5
6
## S3 method for class 'formula'
FRBmultiregMM(formula, data=NULL, ...)

## Default S3 method:
FRBmultiregMM(X, Y, int = TRUE, R = 999, conf = 0.95, 
                control=MMcontrol(...), na.action=na.omit, ...)

Arguments

formula

an object of class formula; a symbolic description of the model to be fit.

data

data frame from which variables specified in formula are to be taken.

X

a matrix or data frame containing the explanatory variables.

Y

a matrix or data frame containing the response variables.

int

logical: if TRUE an intercept term is added to the model (unless it is already present in X)

R

number of bootstrap samples. Default is R=999.

conf

level of the bootstrap confidence intervals. Default is conf=0.95

control

a list with control parameters for tuning the MM-estimate and its computing algorithm, see MMcontrol().

na.action

a function which indicates what should happen when the data contain NAs. Defaults to na.omit.

...

allows for specifying control parameters directly instead of via control

Details

Multivariate MM-estimates combine high breakdown point and high Gaussian efficiency. They are defined by first computing an S-estimate 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 a more efficient M-estimate (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-estimate) is tuned in order to obtain 50% breakdown point. The default tuning of the second loss function (M-estimate) ensures 95% efficiency at the normal model for the coefficient estimates. The desired efficiency can be changed through argument control.

The computation is carried out by a call to MMest_multireg(), which first performs the fast-S algorithm (see Sest_multireg) and does the M-part by reweighted least squares (RWLS) iteration. See MMcontrol for some adjustable tuning parameters regarding the algorithm. The result of this call is also returned as the value est.

The Fast and Robust Bootstrap (Salibian-Barrera and Zamar 2002) is used to calculate so-called basic bootstrap confidence intervals and bias corrected and accelerated (BCa) confidence intervals (Davison and Hinkley 1997, p.194 and p.204 respectively). Apart from the intervals with the requested confidence level, the function also returns p-values for each coefficient corresponding to the hypothesis that the actual coefficient is zero. The p-values are computed as 1 minus the smallest level for which the confidence intervals would include zero. Both BCa and basic bootstrap p-values in this sense are given. The bootstrap calculation is carried out by a call to MMboot_multireg(), the result of which is returned as the value bootest. Bootstrap standard errors are returned as well.

Note: Bootstrap samples which contain too few distinct observations with positive weights are discarded (a warning is given if this happens). The number of samples actually used is returned via ROK.

In the formula-interface, a multivariate response is produced via cbind. For example cbind(x4,x5) ~ x1+x2+x3. All arguments from the default method can also be passed to the formula method except for int (passing int explicitely will produce an error; the inclusion of an intercept term is determined by formula).

The returned object inherits from class mlm such that the standard coef, residuals, fitted and predict functions can be used.

Value

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

scale

MM-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

SE

bootstrap standard errors corresponding the regression coefficients

cov

bootstrap covariance matrix corresponding to the regression coefficients (in vectorized form)

CI.bca.lower

a matrix containing the lower bounds of the bias corrected and accelerated confidence intervals for the regression coefficients.

CI.bca.upper

a matrix containing the upper bounds of the bias corrected and accelerated confidence intervals for the regression coefficients.

CI.basic.lower

a matrix containing the lower bounds of basic bootstrap intervals for the regression coefficients.

CI.basic.upper

a matrix containing the upper bounds of basic bootstrap intervals for the regression coefficients.

p.bca

a matrix containing the p-values based on the BCa confidence intervals for the regression coefficients.

p.basic

a matrix containing the p-values based on the basic bootstrap intervals for the regression coefficients.

est

MM-estimates as returned by the call to MMest_multireg()

bootest

bootstrap results for the MM-estimates as returned by the call to MMboot_multireg()

conf

a copy of the conf argument

method

a list with following components: est = character string indicating that MM-estimates were used, bdp = a copy of bdp from the control argument, and eff = a copy of eff from the control argument

control

a copy of the control argument

X, Y

either copies of the respective arguments or the corresponding matrices produced from formula

ROK

number of bootstrap samples actually used (i.e. not discarded due to too few distinct observations with positive weight)

Author(s)

Gert Willems, stefan Van Aelst and Ella Roelant

References

See Also

summary.FRBmultireg, plot.FRBmultireg, MMboot_multireg, MMest_multireg, FRBmultiregS, FRBmultiregGS, MMcontrol

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
data(schooldata)
school.x <- data.matrix(schooldata[,1:5])
school.y <- data.matrix(schooldata[,6:8])

#computes MM-estimate and 95% confidence intervals 
#based on 999 bootstrap samples:
MMres <- FRBmultiregMM(school.x, school.y, R=999, conf = 0.95)
#or, equivalently using the formula interface
## Not run: MMres <- FRBmultiregMM(cbind(reading,mathematics,selfesteem)~., data=schooldata, 
              R=999, conf = 0.95)
## End(Not run)

#the print method displays the coefficient estimates 
MMres

#the summary function additionally displays the bootstrap standard errors and p-values
#("BCA" method by default)
summary(MMres)

summary(MMres, confmethod="basic")

#ask explicitely for the coefficient matrix:
MMres$coefficients
# or equivalently,
coef(MMres)
#For the error covariance matrix:
MMres$Sigma
                                                              
#plot some bootstrap histograms for the coefficient estimates 
#(with "BCA" intervals by default) 
plot(MMres, expl=c("education", "occupation"), resp=c("selfesteem","reading"))

#plot bootstrap histograms for all coefficient estimates
plot(MMres)
#probably the plot-function has made a selection of coefficients to plot here, 
#since 'all' was too many to  fit on one page, see help(plot.FRBmultireg); 
#this is platform-dependent

FRB documentation built on May 29, 2017, 5:45 p.m.

Related to FRBmultiregMM in FRB...