Learn R Programming

metafor (version 1.9-9)

robust: Compute (Cluster) Robust Tests and Confidence Intervals for 'rma' Objects

Description

The function provides (cluster) robust tests and confidence intervals of the model coefficients for objects of class "rma".

Usage

robust(x, cluster, ...)
"robust"(x, cluster, adjust=TRUE, digits, ...) "robust"(x, cluster, adjust=TRUE, digits, ...)

Arguments

x
an object of class "rma.uni" or "rma.mv".
cluster
a vector specifying the clustering variable to use for constructing the sandwich estimator of the variance-covariance matrix.
adjust
logical indicating whether a small-sample correction should be applied to the variance-covariance matrix.
digits
integer specifying the number of decimal places to which the printed results should be rounded (if unspecified, the default is to take the value from the object).
...
other arguments.

Value

An object of class "robust.rma". The object is a list containing the following components:The results are formated and printed with the print.robust.rma function.

Details

The function constructs a (cluster) robust estimate of the variance-covariance matrix of the model coefficients based on a sandwich-type estimator and then computes tests and confidence intervals of the model coefficients.

Tests of individual coefficients and confidence intervals are based on a t-distribution with $n-p$ degrees of freedom is used, while the omnibus test statistic then uses an F-distribution with $m$ and $n-p$ degrees of freedom, where $n$ is the number of clusters, $p$ denotes the total number of model coefficients (including the intercept if it is present), and $m$ denotes the number of coefficients tested (in the omnibus test).

When adjust=TRUE (the default), the (cluster) robust estimate of the variance-covariance matrix is multiplied by the factor $n/(n-p)$, which serves as a small-sample adjustment that tends to improve the performance of the method when the number of clusters is small.

References

Cameron, A. C., & Miller, D. L. (2015). A practitioner's guide to cluster-robust inference. Journal of Human Resources, 50, 317--372.

Eicker, F. (1967). Limit theorems for regressions with unequal and dependent errors. In L. M. LeCam & J. Neyman (Eds.), Proceedings of the Fifth Berkeley Symposium on Mathematical Statistics and Probability (pp. 59--82). Berkeley: University of California Press.

Froot, K. A. (1989). Consistent covariance matrix estimation with cross-sectional dependence and heteroskedasticity in financial data. Journal of Financial and Quantitative Analysis, 24, 333--355.

Hedges, L. V., Tipton, E., & Johnson, M. C. (2010). Robust variance estimation in meta-regression with dependent effect size estimates. Research Synthesis Methods, 1, 39--65.

Huber, P. (1967). The behavior of maximum-likelihood estimates under nonstandard conditions. In L. M. LeCam & J. Neyman (Eds.), Proceedings of the Fifth Berkeley Symposium on Mathematical Statistics and Probability (pp. 221--233). Berkeley: University of California Press.

MacKinnon, J. G., & White, H. (1985). Some heteroskedasticity-consistent covariance matrix estimators with improved finite sample properties. Journal of Econometrics, 29, 305--325.

Sidik, K., & Jonkman, J. N. (2005). A note on variance estimation in random effects meta-regression. Journal of Biopharmaceutical Statistics, 15, 823--838.

Sidik, K., & Jonkman, J. N. (2006). Robust variance estimation for random effects meta-analysis. Computational Statistics & Data Analysis, 50, 3681--3701.

White, H. (1980). A heteroskedasticity-consistent covariance matrix estimator and a direct test for heteroskedasticity. Econometrica, 48, 817--838.

Williams, R. L. (2000). A note on robust variance estimation for cluster-correlated data. Biometrics, 56, 645--646.

Viechtbauer, W. (2010). Conducting meta-analyses in R with the metafor package. Journal of Statistical Software, 36(3), 1--48. http://www.jstatsoft.org/v36/i03/.

See Also

rma.uni, rma.mv

Examples

Run this code
### load data
dat <- get(data(dat.konstantopoulos2011))

### multilevel random-effects model
res <- rma.mv(yi, vi, random = ~ 1 | district/school, data=dat)
res

### results based on sandwich method
robust(res, cluster=dat$district)

### load data
dat <- get(data(dat.berkey1998))

### construct list of the variance-covariance matrices of the observed outcomes for the studies
V <- lapply(split(dat[,c("v1i", "v2i")], dat$trial), as.matrix)

### construct block diagonal matrix
V <- bldiag(V)

### fit multivariate model
res <- rma.mv(yi, V, mods = ~ outcome - 1, random = ~ outcome | trial, struct="UN", data=dat)
res

### results based on sandwich method
robust(res, cluster=dat$trial)

Run the code above in your browser using DataLab