Title: | Exact Confidence Intervals for Random Effects Meta-Analyses |
Version: | 0.1.0 |
Author: | Haben Michael [aut, cre], Lu Tian [aut] |
Description: | Compute an exact CI for the population mean under a random effects model. The routines implement the algorithm described in Michael, Thronton, Xie, and Tian (2017) https://haben-michael.github.io/research/Exact_Inference_Meta.pdf. |
Depends: | R (≥ 3.2.1) |
License: | GPL-3 |
Encoding: | UTF-8 |
LazyData: | true |
RoxygenNote: | 6.0.1.9000 |
Imports: | metafor, abind, stats, graphics, grDevices |
NeedsCompilation: | no |
Packaged: | 2017-10-03 16:36:58 UTC; haben |
Maintainer: | Haben Michael <haben.michael@stanford.edu> |
Repository: | CRAN |
Date/Publication: | 2017-10-04 08:45:01 UTC |
Combine confidence regions from two RMA.Exact objects
Description
Combine confidence regions from two RMA.Exact objects
Usage
## S3 method for class 'RMA.Exact'
rma1 + rma2
Arguments
rma1 |
the first RMA.Exact object |
rma2 |
the second RMA.Exact object |
Value
an object of class RMA.Exact
Compute a confidence interval for the population mean from an RMA.Exact object
Description
A warning will be issued if the reported endpoints of the confidence interval are near the bounding box.
Usage
## S3 method for class 'RMA.Exact'
confint(object, parm, level = 0.05, ...)
Arguments
object |
an object of class RMA.Exact |
parm |
(inherited) |
level |
the significance levels at which the compute the confidence intervals |
... |
(currently for internal use) |
Value
a matrix with a row corresponding to each weight parameter c0 stored in rma0, and columns containing the upper and lower interval endpoints, the population variance values at whcih those endpoints were obtained, etc.
Examples
## see ?RMA.Exact
Plot a confidence region given by an RMA.Exact object
Description
Plot a confidence region given by an RMA.Exact object
Usage
## S3 method for class 'RMA.Exact'
plot(x, ..., levels = c(0.01, 0.02, 0.05, 0.1, 0.15, 0.2),
mfrow = c(1, dim(rma0)[3]))
Arguments
x |
an object of class RMA.Exact |
... |
additional parameters passed down to graphics::contour (passed from there down to plot.window) |
levels |
the significance levels to plot |
mfrow |
the dimensions of the array of plotting windows for use when rma0 contains regions for multiple weight parameters; defaults to a single row with as many as columns as regions contained in rma0 |
Value
undefined
Examples
## see ?RMA.Exact
Compute an exact confidence interval for the grand mean in a normal-normal random effects meta-analysis.
Description
Compute an exact confidence interval for the grand mean in a normal-normal random effects meta-analysis.
Usage
rma.exact(yi, vi, c0 = 1, level = 0.05, mu.bounds = NULL,
tau2.bounds = NULL, resolution = 100, resolution.mu = resolution,
resolution.tau2 = resolution, Z = NULL, B = 3000, mu.alpha = 0.995,
tau2.alpha = 0.995, plot = TRUE, test.stat = NULL, ...)
Arguments
yi |
a vector containing the primary study measurements |
vi |
a vector of the same length as yi containing the variances of the of the primary study measurements contained in yi |
c0 |
a vector containing the mixing parameters for the test statistics |
level |
the level of the confidence interval; set to NULL to plot a confidence region, otherwise rma.exact.fast is called using the specified level |
mu.bounds |
upper and lower bounds for the range of population effect values for constructing the confidence region; if NULL, value will be calculated from mu.alpha |
tau2.bounds |
upper and lower bounds for the range of population variance values for constructing the confidence region; if NULL, value will be calculated from tau2.alpha |
resolution |
resolution of the population mean and variance values within the bounding box |
resolution.mu |
resolution of the population mean values within the bounding box |
resolution.tau2 |
resolution of the population variance values within the bounding box |
Z |
a matrix of length(yi) rows with each row consisting of standard normal samples to be used in the monte carlo estimation of the null distribution of the test statistic; if NULL, B values will be sampled per row |
B |
the number of monte carlo replicates per primary study observation to be used |
mu.alpha |
the level of the exact CI for constructing the bounds on the population mean dimension of the bounding box |
tau2.alpha |
the level of the exact CI for constructing the bounds on the population variance dimension of the bounding box |
plot |
whether to plot the confidence region (if level is not NULL) or its boundary (if level is NULL) |
test.stat |
(currently for internal use) |
... |
(currently for internal use) |
Details
Computes an exact (up to monte carlo error), unconditional, non-randomized CI for the grand mean in a random effects meta-analysis assuming a normal-normal model for the primary study observations. This function implements the algorithm described in:
Michael, Thornton, Xie, and Tian (2017). Exact Inference on the Random Effects Model for Meta-Analyses with Few Studies. (Submitted.)
If the parameter "level" is not NULL (the default value is .05), this function passes the call down to rma.exact.fast, which computes a CI at the specified level. If "level" is set to NULL, an entire 2-dimensional grid of p-values is estimated. In the latter case, an RMA.Exact object is returned, which may be passed to a plot routine to plot contours of confidence regions.
Value
if "level" is not NULL, a named vector of CI endpoints; otherwise, an object of class RMA.Exact
See Also
rma.exact.fast
for computing confidence intervals at specified levels, plot.RMA.Exact
, confint.RMA.Exact
Examples
set.seed(1)
K <- 5
c0 <- 1
mu0 <- 0
tau2 <- 12.5
vi <- (seq(1, 5, length=K))^2
yi <- rnorm(K)*sqrt(vi+tau2)+mu0
rma.exact(yi=yi,vi=vi)
## plotting a conifdence region and printing CIs with an RMA.Exact object
rma0 <- rma.exact(yi=yi,vi=vi,level=NULL)
plot(rma0)
confint(rma0)
## confidence region with multiple c0 values using an RMA.Exact object
c0 <- c(0,.25,1)
tau2 <- 12.5
vi <- (seq(1, 5, length=K))^2
yi=rnorm(K)*sqrt(vi+tau2)+mu0
rma0 <- rma.exact(yi=yi,vi=vi,c0=c0,level=NULL)
plot(rma0)
confint(rma0)
## setting tau2.bounds and other parameters to non-default values using an RMA.Exact object
Z <- matrix(rnorm(K*5e3),nrow=K)
B <- ncol(Z)
resolution <- 3e2
rma0 <- rma.exact(yi=yi,vi=vi,level=NULL,Z=Z,resolution=resolution,c0=c0,
tau2.bounds=c(1,120),resolution.tau2=1e3,resolution.mu=1e2)
plot(rma0)
c0 <- 1:4
rma0 <- rma.exact(yi=yi,vi=vi,level=NULL,Z=Z,resolution=resolution,c0=c0,
tau2.bounds=c(1,450),resolution.tau2=1e3,resolution.mu=1e2)
plot(rma0)
confint(rma0,level=c(.05))
Compute a confidence interval for the grand mean at a user-specified confidence level.
Description
Compute a confidence interval for the grand mean at a user-specified confidence level.
Usage
rma.exact.fast(yi, vi, c0 = 1.2 * (length(yi) < 6) + 0.6 * (length(yi) >= 6 &
length(yi) < 10) + 0.2 * (length(yi) >= 10), level = 0.05, plot = TRUE,
tau2.bounds = NULL, resolution = 100, Z = NULL, B = 3000,
tau2.alpha = 0.995)
Arguments
yi |
vector of measurements from the primary studies |
vi |
vector of the variances of the measurements in yi |
c0 |
vector of the mixing parameters for the test statistics |
level |
the level of the confidence interval |
plot |
indicator whether to plot the contour of the confidence region |
tau2.bounds |
upper and lower bounds for the range of population variance values for constructing the confidence region; if NULL, value will be calculated from tau2.alpha |
resolution |
resolution of the population variance values for constructing the confidence region |
Z |
a matrix of length(yi) rows with each row consisting of standard normal samples to be used in the monte carlo estimation of the null distribution of the test statistic; if NULL, B values will be sampled per row |
B |
the number of monte carlo replicates per primary study observation to be used |
tau2.alpha |
the level of the exact CI with which to bounds on population variance when constructing the confidence region |
Value
a matrix with length(c0) rows and each row containing the lower and upper endpoints of the confidence interval for the given mixing parameter
See Also
rma.exact
for computing entire confidence regions
Examples
K <- 5
c0 <- 1
mu0 <- 0
tau2 <- 12.5
vi <- (seq(1, 5, length=K))^2
yi=rnorm(K)*sqrt(vi+tau2)+mu0
rma.exact.fast(yi=yi,vi=vi,level=.05)