hc: Meta-Analysis based on the Method by Henmi and Copas (2010)

View source: R/hc.r

hcR Documentation

Meta-Analysis based on the Method by Henmi and Copas (2010)

Description

Function to obtain an estimate of the average true outcome and corresponding confidence interval under a random-effects model using the method described by Henmi and Copas (2010).

Usage

hc(object, ...)

## S3 method for class 'rma.uni'
hc(object, digits, transf, targs, control, ...)

Arguments

object

an object of class "rma.uni".

digits

optional integer to specify 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.

transf

optional argument to specify a function to transform the estimate and the corresponding interval bounds (e.g., transf=exp; see also transf). If unspecified, no transformation is used.

targs

optional arguments needed by the function specified under transf.

control

list of control values for the iterative algorithm. If unspecified, default values are used. See ‘Note’.

...

other arguments.

Details

The model specified via object must be a model without moderators (i.e., either an equal- or a random-effects model).

When using the usual method for fitting a random-effects model (i.e., weighted estimation with inverse-variance weights), the weights assigned to smaller and larger studies become more uniform as the amount of heterogeneity increases. As a consequence, the estimated average outcome could become increasingly biased under certain forms of publication bias (where smaller studies on one side of the funnel plot are missing). The method by Henmi and Copas (2010) counteracts this problem by providing an estimate of the average true outcome that is based on inverse-variance weights as used under an equal-effects model, which are not affected by the amount of heterogeneity. The amount of heterogeneity is still estimated (with the DerSimonian-Laird estimator) and incorporated into the standard error of the estimated average outcome and the corresponding confidence interval.

Currently, there is only a method for handling objects of class "rma.uni" with the hc function. It therefore provides a method for conducting a sensitivity analysis after the model has been fitted with the rma.uni function.

Value

An object of class "hc.rma.uni". The object is a list containing the following components:

beta

estimated average true outcome.

se

corresponding standard error.

ci.lb

lower bound of the confidence intervals for the average true outcome.

ci.ub

upper bound of the confidence intervals for the average true outcome.

...

some additional elements/values.

The results are formatted and printed with the print function.

Note

The method makes use of the uniroot function. By default, the desired accuracy is set equal to .Machine$double.eps^0.25 and the maximum number of iterations to 1000. The desired accuracy (tol) and the maximum number of iterations (maxiter) can be adjusted with the control argument (i.e., control=list(tol=value, maxiter=value)).

Author(s)

Original code by Henmi and Copas (2010). Corrected for typos by Michael Dewey (lists@dewey.myzen.co.uk). Incorporated into the package with some small adjustments for consistency with the other functions in the package by Wolfgang Viechtbauer (wvb@metafor-project.org, https://www.metafor-project.org).

References

Henmi, M., & Copas, J. B. (2010). Confidence intervals for random effects meta-analysis and robustness to publication bias. Statistics in Medicine, 29(29), 2969–2983. ⁠https://doi.org/10.1002/sim.4029⁠

Viechtbauer, W. (2010). Conducting meta-analyses in R with the metafor package. Journal of Statistical Software, 36(3), 1–48. ⁠https://doi.org/10.18637/jss.v036.i03⁠

See Also

rma.uni for the function to fit rma.uni models.

Examples

### calculate log odds ratios and corresponding sampling variances
dat <- escalc(measure="OR", ai=ai, n1i=n1i, ci=ci, n2i=n2i, data=dat.lee2004)
dat

### meta-analysis based on log odds ratios
res <- rma(yi, vi, data=dat)
res

### funnel plot as in Henmi and Copas (2010)
funnel(res, yaxis="seinv", refline=0, xlim=c(-3,3), ylim=c(.5,3.5), steps=7, digits=1, back="white")

### use method by Henmi and Copas (2010) as a sensitivity analysis
hc(res)

### back-transform results to odds ratio scale
hc(res, transf=exp)

wviechtb/metafor documentation built on Dec. 4, 2024, 1:03 a.m.