Create and print league table for network meta-analysis results
A league table is a square matrix showing all pairwise comparisons in a network meta-analysis. Typically, both treatment estimates and confidence intervals are shown.
netleague( x, y, comb.fixed = x$comb.fixed, comb.random = x$comb.random, seq = x$seq, ci = TRUE, backtransf = TRUE, direct = FALSE, digits = gs("digits"), bracket = gs("CIbracket"), separator = gs("CIseparator"), text.NA = ".", big.mark = gs("big.mark") ) ## S3 method for class 'netleague' print(x, comb.fixed = x$comb.fixed, comb.random = x$comb.random, ...)
x |
An object of class |
y |
An object of class |
comb.fixed |
A logical indicating whether a league table should be printed for the fixed effects (common effects) network meta-analysis. |
comb.random |
A logical indicating whether a league table should be printed for the random effects network meta-analysis. |
seq |
A character or numerical vector specifying the sequence of treatments in rows and columns of a league table. |
ci |
A logical indicating whether confidence intervals should be shown. |
backtransf |
A logical indicating whether printed results
should be back transformed. If |
direct |
A logical indicating whether league table with
network estimates (default) or estimates from direct comparisons
should be generated if argument |
digits |
Minimal number of significant digits, see
|
bracket |
A character with bracket symbol to print lower confidence interval: "[", "(", "{", "". |
separator |
A character string with information on separator between lower and upper confidence interval. |
text.NA |
A character string to label missing values. |
big.mark |
A character used as thousands separator. |
... |
Additional arguments (ignored at the moment). |
A league table is a square matrix showing all pairwise comparisons in a network meta-analysis (Hutton et al., 2015). Typically, both treatment estimates and confidence intervals are shown.
If argument y
is not provided, the league table contains the
network estimates from network meta-analysis object x
in the
lower triangle and the direct treatment estimates from pairwise
comparisons in the upper triangle. Note, for the random-effects
model, the direct treatment estimates are based on the common
between-study variance τ^2 from the network meta-analysis,
i.e. the square of list element x$tau
.
If argument y
is provided, the league table contains
information on treatment comparisons from network meta-analysis
object x
in the lower triangle and from network
meta-analysis object y
in the upper triangle. This is, for
example, useful to print information on efficacy and safety in the
same league table.
This implementation reports pairwise comparisons of the treatment in the row versus the treatment in the column in the lower triangle and column versus row in the upper triangle. This is a common presentation for network meta-analyses which allows to easily compare direction and magnitude of treatment effects. For example, given treatments A, B, and C, the results reported in the first row and second column as well as second row and first column are from the pairwise comparison A versus B. Note, this presentation is different from the printout of a network meta-analysis object which reports opposite pairwise comparisons in the lower and upper triangle, e.g., A versus B in the first row and second column and B versus A in the second row and first column.
If the same network meta-analysis object is used for arguments
x
and y
, reciprocal treatment estimates will be shown
in the upper triangle (see examples), e.g., the comparison B versus
A.
R function netrank
can be used to change the order of
rows and columns in the league table (see examples).
Guido Schwarzer sc@imbi.uni-freiburg.de, Gerta Rücker ruecker@imbi.uni-freiburg.de
Hutton B, Salanti G, Caldwell DM, et al. (2015): The PRISMA Extension Statement for Reporting of Systematic Reviews Incorporating Network Meta-analyses of Health Care Interventions: Checklist and Explanations. Annals of Internal Medicine, 162, 777
# Network meta-analysis of count mortality statistics # data(Woods2010) p0 <- pairwise(treatment, event = r, n = N, studlab = author, data = Woods2010, sm = "OR") net0 <- netmeta(p0) oldopts <- options(width = 100) # League table for fixed and random effects model with # - network estimates in lower triangle # - direct estimates in upper triangle # netleague(net0, digits = 2, bracket = "(", separator = " - ") # League table for fixed effects model # netleague(net0, comb.random = FALSE, digits = 2) # Change order of treatments according to treatment ranking (random # effects model) # netleague(net0, comb.fixed = FALSE, digits = 2, seq = netrank(net0)) # print(netrank(net0), comb.fixed = FALSE) ## Not run: # Create a CSV file with league table for random effects model # league0 <- netleague(net0, digits = 2, bracket = "(", separator = " to ") # write.table(league0$random, file = "league0-random.csv", row.names = FALSE, col.names = FALSE, sep = ",") # # Create Excel files with league tables # (if R package writexl is available) # if (requireNamespace("writexl", quietly = TRUE)) { library(writexl) # # League table from random effects model # write_xlsx(league0$random, path = "league0-random.xlsx", col_names = FALSE) # # League tables from fixed and random effects models # write_xlsx(list(fixed = league0$fixed, random = league0$random), path = "league0-both.xlsx", col_names = FALSE) } # Use depression dataset # data(Linde2015) # Define order of treatments # trts <- c("TCA", "SSRI", "SNRI", "NRI", "Low-dose SARI", "NaSSa", "rMAO-A", "Hypericum", "Placebo") # Outcome labels # outcomes <- c("Early response", "Early remission") # (1) Early response # p1 <- pairwise(treat = list(treatment1, treatment2, treatment3), event = list(resp1, resp2, resp3), n = list(n1, n2, n3), studlab = id, data = Linde2015, sm = "OR") # net1 <- netmeta(p1, comb.fixed = FALSE, seq = trts, ref = "Placebo", small = "bad") # (2) Early remission # p2 <- pairwise(treat = list(treatment1, treatment2, treatment3), event = list(remi1, remi2, remi3), n = list(n1, n2, n3), studlab = id, data = Linde2015, sm = "OR") # net2 <- netmeta(p2, comb.fixed = FALSE, seq = trts, ref = "Placebo", small = "bad") options(width = 200) netleague(net1, digits = 2) netleague(net1, digits = 2, ci = FALSE) netleague(net2, digits = 2, ci = FALSE) # League table for two outcomes with # - network estimates of first outcome in lower triangle # - network estimates of second outcome in upper triangle # netleague(net1, net2, digits = 2, ci = FALSE) netleague(net1, net2, seq = netrank(net1), ci = FALSE) netleague(net1, net2, seq = netrank(net2), ci = FALSE) print(netrank(net1)) print(netrank(net2)) # Report results for network meta-analysis twice # netleague(net1, net1, seq = netrank(net1), ci = FALSE, backtransf = FALSE) netleague(net1, net1, seq = netrank(net1), ci = FALSE, backtransf = FALSE, direct = TRUE) ## End(Not run) options(oldopts) ## Not run: # Generate a partial order of treatment rankings # np <- netposet(net1, net2, outcomes = outcomes) hasse(np) plot(np) ## End(Not run)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.