Additive network meta-analysis for combinations of treatments
Some treatments in a network meta-analysis may be combinations of other treatments or have common components. The influence of individual components can be evaluated in an additive network meta-analysis model assuming that the effect of treatment combinations is the sum of the effects of its components. This function implements this additive model in a frequentist way.
netcomb( x, inactive = NULL, sep.comps = "+", C.matrix, comb.fixed = x$comb.fixed, comb.random = x$comb.random | !is.null(tau.preset), tau.preset = NULL )
x |
An object of class |
inactive |
A character string defining the inactive treatment (see Details). |
sep.comps |
A single character to define separator between treatment components. |
C.matrix |
C matrix (see Details). |
comb.fixed |
A logical indicating whether a fixed effects (common effects) network meta-analysis should be conducted. |
comb.random |
A logical indicating whether a random effects network meta-analysis should be conducted. |
tau.preset |
An optional value for the square-root of the between-study variance τ^2. |
Treatments in network meta-analysis (NMA) can be complex
interventions. Some treatments may be combinations of others or
have common components. The standard analysis provided by
netmeta
is a NMA where all existing (single or
combined) treatments are considered as different nodes in the
network. Exploiting the fact that some treatments are combinations
of common components, an additive component network meta-analysis
(CNMA) model can be used to evaluate the influence of individual
components. This model assumes that the effect of a treatment
combination is the sum of the effects of its components which
implies that common components cancel out in comparisons.
The additive CNMA model has been implemented using Bayesian methods (Mills et al., 2012; Welton et al., 2013). This function implements the additive model in a frequentist way (Rücker et al., 2019).
The underlying multivariate model is given by
\bold{δ} = \bold{B} \bold{θ}, \bold{θ} = \bold{C} \bold{β}
with
vector of true treatment effects (differences) from individual studies,
design matrix describing the structure of the network,
parameter vector that represents the existing combined treatments,
matrix describing how the treatments are composed,
parameter vector representing the treatment components.
All parameters are estimated using weighted least squares regression.
Argument inactive
can be used to specify a single component
that does not have any therapeutic value. Accordingly, it is
assumed that the treatment effect of the combination of this
component with an additional treatment component is equal to the
treatment effect of the additional component alone.
Argument sep.comps
can be used to specify the separator
between individual components. By default, the matrix C is
calculated internally from treatment names. However, it is possible
to specify a different matrix using argument C.matrix
.
An object of class netcomb
with corresponding print
,
summary
, and forest
functions. The object is a list
containing the following components:
studlab |
Study labels. |
treat1 |
Label/Number for first treatment. |
treat2 |
Label/Number for second treatment. |
TE |
Estimate of treatment effect, i.e. difference between first and second treatment. |
seTE |
Standard error of treatment estimate. |
seTE.adj |
Standard error of treatment estimate, adjusted for multi-arm studies. |
design |
Design of study providing pairwise comparison. |
event1 |
Number of events in first treatment group. |
event2 |
Number of events in second treatment group. |
n1 |
Number of observations in first treatment group. |
n2 |
Number of observations in second treatment group. |
k |
Total number of studies. |
m |
Total number of pairwise comparisons. |
n |
Total number of treatments. |
d |
Total number of designs (corresponding to the unique set of treatments compared within studies). |
c |
Total number of components. |
trts |
Treatments included in network meta-analysis. |
k.trts |
Number of studies evaluating a treatment. |
n.trts |
Number of observations receiving a treatment (if
arguments |
events.trts |
Number of events observed for a treatment (if
arguments |
studies |
Study labels coerced into a factor with its levels sorted alphabetically. |
narms |
Number of arms for each study. |
designs |
Unique list of designs present in the network. A design corresponds to the set of treatments compared within a study. |
comps |
Unique list of components present in the network. |
TE.nma.fixed, TE.nma.random |
A vector of length m of consistent treatment effects estimated by network meta-analysis (nma) (fixed and random effects model). |
seTE.nma.fixed, seTE.nma.random |
A vector of length m of effective standard errors estimated by network meta-analysis (fixed and random effects model). |
lower.nma.fixed, lower.nma.random |
A vector of length m of lower confidence interval limits for consistent treatment effects estimated by network meta-analysis (fixed and random effects model). |
upper.nma.fixed, upper.nma.random |
A vector of length m of upper confidence interval limits for the consistent treatment effects estimated by network meta-analysis (fixed and random effects model). |
statistic.nma.fixed, statistic.nma.random |
A vector of length m of z-values for test of treatment effect for individual comparisons (fixed and random effects model). |
pval.nma.fixed, pval.nma.random |
A vector of length m of p-values for test of treatment effect for individual comparisons (fixed and random effects model). |
TE.cnma.fixed, TE.cnma.random |
A vector of length m of consistent treatment effects estimated by the additive (fixed and random effects) model. |
seTE.cnma.fixed, seTE.cnma.random |
A vector of length m with standard errors estimated by the additive (fixed and random effects) model. |
lower.cnma.fixed, lower.cnma.random |
A vector of length m of lower confidence interval limits for consistent treatment effects estimated by the additive (fixed and random effects) model. |
upper.cnma.fixed, upper.cnma.random |
A vector of length m of upper confidence interval limits for consistent treatment effects estimated by the additive (fixed and random effects) model. |
statistic.cnma.fixed, statistic.cnma.random |
A vector of length m of z-values for the test of an overall effect estimated by the additive (fixed and random effects) model. |
pval.cnma.fixed, pval.cnma.random |
A vector of length m of p-values for the test of an overall effect estimated by the additive (fixed and random effects) model. |
TE.fixed, TE.random |
nxn matrix with overall treatment effects estimated by the additive (fixed and random effects) model. |
seTE.fixed, seTE.random |
nxn matrix with standard errors estimated by the additive (fixed and random effects) model. |
lower.fixed, upper.fixed, lower.random,
upper.random |
nxn matrices with lower and upper confidence interval limits estimated by the additive (fixed and random effects) model. |
statistic.fixed, pval.fixed, statistic.random,
pval.random |
nxn matrices with z-values and p-values for test of overall effect estimated by the additive (fixed and random effects) model. |
Comp.fixed, Comp.random |
A vector of component effects (fixed and random effects model). |
seComp.fixed, seComp.random |
A vector with corresponding standard errors (fixed and random effects model). |
lower.Comp.fixed, lower.Comp.random |
A vector with lower confidence limits for components (fixed and random effects model). |
upper.Comp.fixed, upper.Comp.random |
A vector with upper confidence limits for components (fixed and random effects model). |
statistic.Comp.fixed, statistic.Comp.random |
A vector with z-values for the overall effect of components (fixed and random effects model). |
pval.Comp.fixed, pval.Comp.random |
A vector with p-values for the overall effect of components (fixed and random effects model). |
Comb.fixed, Comb.random |
A vector of combination effects (fixed and random effects model). |
seComb.fixed, seComb.random |
A vector with corresponding standard errors (fixed and random effects model). |
lower.Comb.fixed, lower.Comb.random |
A vector with lower confidence limits for combinations (fixed and random effects model). |
upper.Comb.fixed, upper.Comb.random |
A vector with upper confidence limits for combinations (fixed and random effects model). |
statistic.Comb.fixed, statistic.Comb.random |
A vector with z-values for the overall effect of combinations (fixed and random effects model). |
pval.Comb.fixed, pval.Comb.random |
A vector with p-values for the overall effect of combinations (fixed and random effects model). |
Q.additive |
Overall heterogeneity / inconsistency statistic (additive model). |
df.Q.additive |
Degrees of freedom for test of heterogeneity / inconsistency (additive model). |
pval.Q.additive |
P-value for test of heterogeneity / inconsistency (additive model). |
tau |
Square-root of between-study variance (additive model). |
I2, lower.I2, upper.I2 |
I-squared, lower and upper confidence limits. |
Q.standard |
Overall heterogeneity / inconsistency statistic (standard model). |
df.Q.standard |
Degrees of freedom for test of heterogeneity / inconsistency (standard model). |
pval.Q.standard |
P-value for test of heterogeneity / inconsistency (standard model). |
Q.diff |
Test statistic for difference in goodness of fit between standard and additive model. |
df.Q.diff |
Degrees of freedom for difference in goodness of fit between standard and additive model. |
pval.Q.diff |
P-value for difference in goodness of fit between standard and additive model. |
A.matrix |
Adjacency matrix (nxn). |
B.matrix |
Edge-vertex incidence matrix (mxn). |
C.matrix |
As defined above. |
sm |
Summary measure. |
level.comb |
Level for confidence intervals. |
comb.fixed, comb.random, tau.preset |
As defined above. |
sep.trts |
A character used in comparison names as separator between treatment labels. |
nchar.trts |
A numeric defining the minimum number of characters used to create unique treatment and component names. |
inactive, sep.comps |
As defined above. |
backtransf |
A logical indicating whether results should be back transformed in printouts and forest plots. |
title |
Title of meta-analysis / systematic review. |
x |
As defined above. |
call |
Function call. |
version |
Version of R package netmeta used to create object. |
Gerta Rücker ruecker@imbi.uni-freiburg.de, Guido Schwarzer sc@imbi.uni-freiburg.de
König J, Krahn U, Binder H (2013): Visualizing the flow of evidence in network meta-analysis and characterizing mixed treatment comparisons. Statistics in Medicine, 32, 5414–29
Mills EJ, Thorlund K, Ioannidis JP (2012): Calculating additive treatment effects from multiple randomized trials provides useful estimates of combination therapies. Journal of Clinical Epidemiology, 65, 1282–8
Rücker G, Petropoulou M, Schwarzer G (2019): Network meta-analysis of multicomponent interventions. Biometrical Journal, 1–14, https://doi.org/10.1002/bimj.201800167
Welton NJ, Caldwell DM, Adamopoulos E, Vedhara K (2009): Mixed treatment comparison meta-analysis of complex interventions: psychological interventions in coronary heart disease. American Journal of Epidemiology, 169: 1158–65
data(Linde2016) # Only consider studies including Face-to-face PST (to reduce # runtime of example) # face <- subset(Linde2016, id %in% c(16, 24, 49, 118)) # Conduct random effects network meta-analysis # net1 <- netmeta(lnOR, selnOR, treat1, treat2, id, data = face, ref = "placebo", sm = "OR", comb.fixed = FALSE) summary(net1) forest(net1, xlim = c(0.2, 50)) # Additive model for treatment components (with placebo as inactive # treatment) # nc1 <- netcomb(net1, inactive = "placebo") summary(nc1) forest(nc1, xlim = c(0.2, 50)) ## Not run: # Specify, order of treatments # trts <- c("TCA", "SSRI", "SNRI", "NRI", "Low-dose SARI", "NaSSa", "rMAO-A", "Ind drug", "Hypericum", "Face-to-face CBT", "Face-to-face PST", "Face-to-face interpsy", "Face-to-face psychodyn", "Other face-to-face", "Remote CBT", "Self-help CBT", "No contact CBT", "Face-to-face CBT + SSRI", "Face-to-face interpsy + SSRI", "Face-to-face PST + SSRI", "UC", "Placebo") # # Note, three treatments are actually combinations of 'SSRI' with # other components: # "Face-to-face CBT + SSRI", # "Face-to-face interpsy + SSRI", # "Face-to-face PST + SSRI" # Conduct random effects network meta-analysis # net1 <- netmeta(lnOR, selnOR, treat1, treat2, id, data = Linde2016, ref = "placebo", seq = trts, sm = "OR", comb.fixed = FALSE) summary(net1) forest(net1, xlim = c(0.2, 50)) # Additive model for treatment components (with placebo as inactive # treatment) # nc1 <- netcomb(net1, inactive = "placebo") summary(nc1) forest(nc1, xlim = c(0.2, 50)) ## End(Not run)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.