nma.ab.cont {pcnetmeta} | R Documentation |
Arm-Based Network Meta-Analysis for Continuous Outcomes
Description
Performs the arm-based network meta-analysis for continuous outcomes, which estimates the treatment-specific effects and effect differences.
Usage
nma.ab.cont(s.id, t.id, mean, sd, total.n, data, trtname,
param = c("mu", "diff", "rank.prob"),model = "het_cor",
prior.type, a = 0.001, b = 0.001, c = 10,
higher.better = FALSE, digits = 4, n.adapt = 5000,
n.iter = 100000, n.burnin = floor(n.iter/2), n.chains = 3,
n.thin = max(1, floor((n.iter - n.burnin)/100000)),
conv.diag = FALSE, trace = NULL, dic = FALSE, postdens = FALSE,
mcmc.samples = FALSE)
Arguments
s.id |
a numeric or character vector specifying study ID, or the corresponding column name in the argument |
t.id |
a numeric or character vector specifying treatment ID, or the corresponding column name in the argument |
mean |
a numeric vector specifying the sample mean of the continuous outcomes for a certain treatment group in the corresponding study, or the corresponding column name in the argument |
sd |
a numeric vector specifying the sample standard deviation of the continuous outcomes for a certain treatment group in the corresponding study, or the corresponding column name in the argument |
total.n |
a numeric vector of positive integers, indicating total number of participants for a certain treatment in the corresponding study, or the corresponding column name in the argument |
data |
an optional data frame containing the dataset of the network meta-analysis. If |
trtname |
a vector of character strings specifying the treatment names for the corresponding treatment IDs according to their order in |
param |
a vector of character strings specifying the effect measures to be estimated. The default includes treatment-specific effects ( |
model |
a character string specifying which Bayesian hierarchical model to be applied in the arm-based network meta-analysis. This argument can be set as |
prior.type |
prior distribution of variances and/or covariances of random effects. If |
a , b |
positive numbers, specifying the shape and scale parameters of inverse gamma priors for variance(s) of random effects if using |
c |
positive number, specifying the upper bound of uniform prior for standard deviation(s) of random effects if using |
higher.better |
an optional logical value which needs to be specified when estimating the treatment rank probabilities (i.e., |
digits |
a positive integer specifying the digits after the decimal point for the effect measure estimates. The default is 4. |
n.adapt |
the number of iterations for adaptation in Markov chain Monte Carlo (MCMC) algorithm. The default is 5,000. If a warning "adaptation incomplete" appears, users may increase |
n.iter |
the total number of iterations in each MCMC chain. The default is 100,000. |
n.burnin |
the number of iterations for burn-in period. The default is |
n.chains |
the number of MCMC chains. The default is 3. |
n.thin |
a positive integer specifying the thinning rate. The default is the thinning rate which yields no more than 100,000 iterations remaining in each chain. |
conv.diag |
a logical value indicating whether to perform MCMC convergence diagnostic. The default is |
trace |
a vector of character strings of effect measures. The character strings should be selected from those specified in |
dic |
a logical value indicating whether to calculate the deviance information criterion (DIC) value. The default is |
postdens |
a logical value indicating whether to draw the posterior density plots for treatment-specific effects. If |
mcmc.samples |
a logical value indicating whether to save MCMC posterior samples in the output object. The default is |
Details
Suppose that a network meta-analysis collects I
studies on K
treatments, where each study investigates a subset of the K
treatments with continuous outcomes. Label the studies from i = 1
to I
and the treatments from k = 1
to K
. Let T_{i}
be the subset of the K
treatments that is compared in the i
th study. Also, in the i
th study, let n_{ik}
be the number of participants allocated to treatment group k
(k \in T_{i}
), and \bar{y}_{ik}
and s_{ik}^{2}
be the sample mean and sample standard deviation of the continuous outcome measures. The arm-based model is constructed as:
\bar{y}_{ik} \sim N (\theta_{ik}, s^{2}_{ik}/n_{ik}) \qquad k \in T_{i};
\theta_{ik} = \mu_{k} + \nu_{ik};
(\nu_{i1}, \nu_{i2}, \ldots, \nu_{iK})^{T} \sim N (\boldsymbol{0}, \mathbf{\Sigma}_{K}),
where \mathbf{\Sigma}_{K}
is a K \times K
positive definite correlation matrix. The \mu_{k}
's are treatment-specific fixed effects, and the random effects \nu_{ik}
are correlated within each study with the covariance matrix \mathbf{\Sigma}_{K}
.
An unstructured covariance matrix \mathbf{\Sigma}_{K}
in the model above corresponds to model
= "het_cor"
. The inverse-Wishart prior can be assigned to \mathbf{\Sigma}_{K}
. Alternatively, using the separation strategy by Cholesky decomposition (prior.type
= "chol"
), uniform priors U(0, c)
are assigned to the standard deviations in \mathbf{\Sigma}_{K}
and non-informative priors are assigned to the correlation components (Barnard et al., 2000; Lu and Ades, 2009; Wei and Higgins, 2013; Lin and Chu, 2018). Denote \sigma_{k}
as the standard deviation of \nu_{ik}
and \mathbf{D} = diag(\sigma_{1}, \ldots, \sigma_{K})
, then the correlation matrix is \mathbf{R}_{K} = \mathbf{D}^{-1} \mathbf{\Sigma}_{K} \mathbf{D}^{-1}
. If we assume that all of the off-diagonal elements in \mathbf{R}_{K}
are equal, say to \rho
, then this model corresponds to model
= "het_eqcor"
. If we further assume the homogeneity of variances of the random effects, that is, \sigma_{k} = \sigma
for k = 1, 2, \ldots, K
, then the model is "hom_eqcor"
. In addition, for the models "hom_eqcor"
and "het_eqcor"
, setting prior.type
as "invgamma"
implies using inverse-gamma priors with shape and scale parameters, a
and b
, for \sigma_{k}^2
or \sigma^2
, and "unif"
implies uniform priors U(0, c)
for \sigma_{k}
or \sigma
.
Value
nma.ab.cont
returns a list with estimates of effect measures specified in param
. If the argument dic
= TRUE
, the deviance information criterion (DIC) statistic will be returned in the output list. In addition, if conv.diag
= TRUE
, a .txt file containing the point estimates of the potential scale reduction factor and their upper confidence limits by Gelman and Rubin (1992) will be saved in users' current working directory. If postdens
= TRUE
, the posterior densities of treatment-specific absolute risks will be saved as a .pdf file. If trace
is specified, the trace plots are saved as .png files.
Note
Earlier versions (< 4.0.0) of JAGS do not guarantee exact reproducibility of the results. We recommend users to install the latest version (>= 4.0.0) of JAGS so that exact reproducibility can be ensured by specifying certain seeds.
References
Barnard J, McCulloch R, Meng XL (2000). "Modeling covariance matrices in terms of standard deviations and correlations, with application to shrinkage." Statistica Sinica, 10(4), 1281–1311.
Dias S, Sutton AJ, Ades AE, Welton NJ (2013). "Evidence synthesis for decision making 2: a generalized linear modeling framework for pairwise and network meta-analysis of randomized controlled trials." Medical Decision Making, 33(5), 607–617. <doi: 10.1177/0272989X12458724>
Gelman A, Rubin DB (1992). "Inference from iterative simulation using multiple sequences." Statistical Science, 7(4), 457–472. <doi: 10.1214/ss/1177011136>
Lin L, Chu H (2018). "Bayesian multivariate meta-analysis of multiple factors." Research Synthesis Methods, 9(2), 261–272. <doi: 10.1002/jrsm.1293>
Lin L, Zhang J, Hodges JS, Chu H (2017). "Performing arm-based network meta-analysis in R with the pcnetmeta package." Journal of Statistical Software, 80(5), 1–25. <doi: 10.18637/jss.v080.i05>
Lu G, Ades AE (2004). "Combination of direct and indirect evidence in mixed treatment comparisons." Statistics in Medicine, 23(20), 3105–3124. <doi: 10.1002/sim.1875>
Lu G, Ades AE (2009). "Modeling between-trial variance structure in mixed treatment comparisons." Biostatistics, 10(4), 792–805. <doi: 10.1093/biostatistics/kxp032>
Spiegelhalter DJ, Best NG, Carlin BP, Van Der Linde A (2002). "Bayesian measures of model complexity and fit." Journal of the Royal Statistical Society, Series B (Statistical Methodology), 64(4), 583–639. <doi: 10.1111/1467-9868.00353>
Wei Y, Higgins JPT (2013). "Bayesian multivariate meta-analysis with multiple outcomes." Statistics in Medicine, 32(17), 2911–2934. <doi: 10.1002/sim.5745>
Zhang J, Carlin BP, Neaton JD, Soon GG, Nie L, Kane R, Virnig BA, Chu H (2014). "Network meta-analysis of randomized clinical trials: Reporting the proper summaries." Clinical Trials, 11(2), 246–262. <doi: 10.1177/1740774513498322>
See Also
nma.ab.bin
, nma.ab.py
, nma.ab.followup
Examples
data("parkinson")
# increase n.iter to reach convergence of MCMC
# increase n.adapt to enhance efficiency
set.seed(1234)
cont.out <- nma.ab.cont(s.id, t.id, mean, sd, n, data = parkinson,
param = c("mu", "diff"), model = "hom_eqcor", prior.type = "unif",
n.adapt = 200, n.iter = 100, n.chains = 1)