Pairwise: binary outcomes
Risk and odds ratios for events such as complications or mortality.
What it is
Every patient in every trial answers the same yes-or-no question: did the event happen? Inside one trial, that gives a simple 2×2 table, with events and non-events in each arm.
Each table is turned into one number that compares the arms, most often the risk ratio: the risk with the intervention divided by the risk with the control. The meta-analysis then combines these numbers across trials, giving more weight to larger and more informative trials.
The result is one pooled effect with its 95% confidence interval, and a measure of how much the trials disagree with each other (heterogeneity).
| Event | No event | Risk | |
|---|---|---|---|
| Intervention | 12 | 88 | 12% |
| Control | 20 | 80 | 20% |
Repeat for every trial, then pool: that is the meta-analysis.
When to use it
Use it when
- The outcome is an event that either happens or does not: complication, transfusion, recurrence, mortality, conversion to open surgery.
- You are comparing two groups, such as a new technique against the standard one.
- Each study reports how many patients had the event, and how many patients there were, in each group.
Choose another tool when
- The outcome is a measurement (minutes, days, a score): use continuous outcomes.
- Follow-up time differs a lot between patients and timing matters, as in survival: use time-to-event methods.
- There is no comparison group, only case series: use single-arm binary outcomes.
The template, parameter by parameter
Click a highlighted argument to see what it does and which values to use. Picking a value updates the code.
m <- metabin(event.e = ev_int, n.e = n_int,
event.c = ev_ctl, n.c = n_ctl,
studlab = study, data = dat,
= "RR",
= "MH",
= "REML",
= 0.5, = "only0",
= FALSE,
= FALSE, = TRUE,
= FALSE,
label.e = "Intervention", label.c = "Control")
m <- update(m,
= if (m$tau2 > 0) "HK" else "classic")
# forest plot: see section 4
The forest plot, parameter by parameter
These arguments change only how the result is shown, not the result itself. Click one to see the options.
("forest.png", width = 5500, height = 1100 + 170 * m$k, = 500)
forest(m,
= "RevMan5",
= studlab,
= c(0.1, 10),
= "navyblue",
= "black",
= TRUE,
= 2,
label.left = "Favors intervention",
label.right = "Favors control",
colgap.forest.left = "7mm")
()
In my work
Figures from my published reviews, next to the metabin() call behind them. These analyses used the Wald confidence interval: when they were done, Cochrane had not yet recommended switching to Hartung-Knapp when tau² > 0. Click a figure to enlarge it.
m <- metabin(
e.e, n.e, e.c, n.c, # events/totals per arm
data = dat, # one row per study
studlab = Study, # study names
sm = "RR", # risk ratio
method = "MH", # Mantel-Haenszel
method.tau = "DL", # DerSimonian-Laird tau²
method.random.ci = "classic" # Wald CI
)
m <- metabin(
e.e, n.e, e.c, n.c, # events/totals per arm
data = dat, # one row per study
studlab = Study, # study names
sm = "OR", # odds ratio
method = "MH", # Mantel-Haenszel
method.tau = "REML", # tau², REML
method.random.ci = "classic" # Wald CI
)
References
- Higgins JPT, Thomas J, Chandler J, et al. Cochrane Handbook for Systematic Reviews of Interventions, version 6.5. Cochrane; 2024. Chapter 6 (effect measures) and Chapter 10 (analysing data).
- Mantel N, Haenszel W. Statistical aspects of the analysis of data from retrospective studies of disease. J Natl Cancer Inst. 1959;22:719-748.
- Veroniki AA, Jackson D, Viechtbauer W, et al. Methods to estimate the between-study variance and its uncertainty in meta-analysis. Res Synth Methods. 2016;7:55-79.
- IntHout J, Ioannidis JPA, Borm GF. The Hartung-Knapp-Sidik-Jonkman method for random effects meta-analysis is straightforward and considerably outperforms the standard DerSimonian-Laird method. BMC Med Res Methodol. 2014;14:25.
- Riley RD, Higgins JPT, Deeks JJ. Interpretation of random effects meta-analyses. BMJ. 2011;342:d549.
- Sweeting MJ, Sutton AJ, Lambert PC. What to add to nothing? Use and avoidance of continuity corrections in meta-analysis of sparse data. Stat Med. 2004;23:1351-1375.
- Balduzzi S, Rücker G, Schwarzer G. How to perform a meta-analysis with R: a practical tutorial. Evid Based Ment Health. 2019;22:153-160.