
Correct the effect size for publication bias/small-study effects
Source:R/correctPublicationBias.R
correctPublicationBias.RdThis function allows to add effect sizes estimates corrected for publication bias/
small-study effects to results of the runMetaAnalysis function.
Usage
correctPublicationBias(model,
which.run = model$which.run[1],
lower.is.better = TRUE,
selmodel.steps = 0.05,
...)Arguments
- model
An object of class
runMetaAnalysis, created by therunMetaAnalysisfunction.- which.run
The model in
modelthat should be used for the publication bias analyses. Uses the default analysis inmodelif no value is specified by the user. Possible values are"overall","combined","lowest","highest","outliers","influence"and"rob".- lower.is.better
Do lower values indicate better outcomes (i.e. higher effects)? Default is
TRUE.- selmodel.steps
Thresholds to be assumed for the step function in the selection model. Must be a vector of numbers referring to the cut-points in the selection models. If two-sided testing is assumed for the included studies, the cut-point must be doubled to obtain the assumed p-value (e.g.
selmodel.steps = c(0.03, 0.05)means that p=0.06 and p=0.10 are assumed as selection thresholds). The default is0.05.- ...
Additional arguments. See trimfill.default and limitmeta.
Value
Returns an object of class "runMetaAnalysis" and "correctPublicationBias".
This object includes all original objects included in model, but adds a list object
with the name correctPublicationBias. This list object includes all three fitted publication
bias analysis models, as well as the generated results.
Details
The correctPublicationBias function is a wrapper running three meta-analytic
methods to control the pooled effect size for publication bias and/or small-study effects:
"trimfill". Applies Duval and Tweedie's (2000a, 2000b) trim-and-fill algorithm, using the trimfill method in themetapackage."limitmeta". Runs a limit meta-analysis as described in Rücker et al. (2011), using the implementation in thelimitmetapackage."selection". Runs a step function selection model using the selmodel function inmetafor. For details see e.g. Vevea and Hedges (1995).
References
Duval S & Tweedie R (2000a): A nonparametric "Trim and Fill" method of accounting for publication bias in meta-analysis. Journal of the American Statistical Association, 95, 89–98
Duval S & Tweedie R (2000b): Trim and Fill: A simple funnel-plot-based method of testing and adjusting for publication bias in meta-analysis. Biometrics, 56, 455–63
Rücker G, Schwarzer G, Carpenter JR, Binder H, Schumacher M (2011): Treatment-effect estimates adjusted for small-study effects via a limit meta-analysis. Biostatistics, 12, 122–42
Vevea, J. L., & Hedges, L. V. (1995). A general linear model for estimating effect size in the presence of publication bias. Psychometrika, 60(3), 419–435. https://doi.org/10.1007/BF02294384
Author
Mathias Harrer mathias.h.harrer@gmail.com, Paula Kuper paula.r.kuper@gmail.com, Pim Cuijpers p.cuijpers@vu.nl
Examples
if (FALSE) {
data("depressionPsyCtr")
depressionPsyCtr %>%
checkDataFormat() %>%
checkConflicts() %>%
calculateEffectSizes() %>%
filterPoolingData(condition_arm1 %in% c("cbt", "pst")) %>%
runMetaAnalysis() -> res
# Correct for small-study-effects/publication bias
res %>% correctPublicationBias()
# Use additional arguments to control settings of the trim-and-fill
# and limit meta-analysis
correctPublicationBias(res,
which.run = "combined",
type = "R",
method.adjust = "mulim")
# Generate plots
correctPublicationBias(res) %>% plot("trimfill")
correctPublicationBias(res) %>% plot("limitmeta")
correctPublicationBias(res) %>% plot("selection")
# Returned object is of class "runMetaAnalysis"; therefore,
# all S3 methods are available:
res <- res %>% correctPublicationBias()
metaRegression(res$model.overall, ~country)
}