run_sensitivity {rnmamod} | R Documentation |
Perform sensitivity analysis for missing participant outcome data
Description
Performs a sensitivity analysis by applying pairwise meta-analysis or network meta-analysis for a series of different scenarios about the informative missingness parameter.
Usage
run_sensitivity(
full,
assumption,
mean_scenarios,
var_misspar,
n_chains,
n_iter,
n_burnin,
n_thin,
inits = NULL
)
Arguments
full |
|
assumption |
Character string indicating the structure of the
informative missingness parameter. Set |
mean_scenarios |
A vector with numeric values for the mean of the normal distribution of the informative missingness parameter (see 'Details'). The vector should have a length equal to 5 or larger. The missing-at-random (MAR) assumption should be the median of the vector, so that the same number of informative scenarios appear before and after the MAR. The default scenarios are c(-log(3), -log(2), log(0.9999), log(2), log(3)) and c(-2, -1, 0, 1, 2) for binary and continuous outcome data, respectively. |
var_misspar |
A positive non-zero number for the variance of the normal
distribution of the informative missingness parameter. When the
|
n_chains |
Integer specifying the number of chains for the MCMC
sampling; an argument of the |
n_iter |
Integer specifying the number of Markov chains for the MCMC
sampling; an argument of the |
n_burnin |
Integer specifying the number of iterations to discard at the
beginning of the MCMC sampling; an argument of the
|
n_thin |
Integer specifying the thinning rate for the MCMC sampling; an
argument of the |
inits |
A list with the initial values for the parameters; an argument
of the |
Details
The model runs in JAGS
and the progress of the simulation
appears on the R console. The number of times run_sensitivity
is
used appears on the R console as a text in red and it equals the
number of scenarios defined as the square of the length of the
vector specified in mean_scenarios
(see 'Examples').
The output of run_sensitivity
is used as an S3 object by other
functions of the package to be processed further and provide an
end-user-ready output.
In the case of pairwise meta-analysis, EM
and tau
are
estimated as many times as the number of scenarios considered.
In the case of network meta-analysis, each possible pairwise comparison is
estimated as many times as the number of scenarios considered.
The informative missingness parameter is assumed to differ only across the
interventions of the dataset. Therefore, the user can specify the
informative missingness parameter to be arm-specific and identical
(assumption = "IDE-ARM"
), or arm-specific and
hierarchical (assumption = "HIE-ARM"
) (Spineli et al., 2021).
The length of the vector specified in argument mean_scenarios
should
be equal to or more than 5 (a positive odd integer) to allow for an
adequate number of scenarios. It is important that the number
corresponding to the MAR assumption is the middle of the numbers in the
vector specified in argument mean_scenarios
. The MAR
assumption constitutes the primary analysis.
Under the informative missingness difference of means parameter (relevant
for the raw and standardised mean diffenre), the MAR assumption equals 0.
Under the informative missingness odds ratio parameter (IMOR; relevant for
the odds ratio) and the informative missingness ratio of means (IMRoM;
relevant for the ratio of means) parameter, the MAR assumption equals 1;
however, both parameters are analysed in the logarithmic scale. We advise
using the value 0.999
rather than 1
in mean_scenarios
for the IMOR and IMRoM parameters; otherwise, the execution of the function
will be stopped and the error 'Invalid parent values' will be printed on
the R console.
Currently, there are no empirically-based prior distributions for the
informative missingness parameters. The users may refer to Spineli (2019),
Mavridis et al. (2015), Turner et al. (2015), and White et al. (2008) to
determine mean_scenarios
for an informative missingness mechanism
and select a proper value for var_misspar
.
run_sensitivity
inherits the arguments data
,
measure
, model
, heter_prior
, D
, indic
,
base_risk
, and ref
from run_model
(now contained in the argument full
). This prevents specifying a
different Bayesian model from that considered in the primary analysis
(via run_model
)–an exception in the assumption
argument as it is restricted to only two character strings. Therefore, the
user needs first to apply run_model
, and then use
run_sensitivity
(see 'Examples').
The run_sensitivity
function also returns the arguments
measure
, scenarios
, D
, heter
, n_chains
,
n_iter
, n_burnin
, and n_thin
as specified by the user
to be inherited by other relevant functions of the package.
The model is updated until convergence using the
autojags
function of the R-package
R2jags with 2 updates and
number of iterations and thinning equal to n_iter
and n_thin
,
respectively.
run_sensitivity
can be used only when missing participant
outcome data have been extracted for at least one trial. Otherwise, the
execution of the function will be stopped and an error message will be
printed on the R console.
Value
A list of R2jags outputs on the summaries of the posterior distribution, and the Gelman-Rubin convergence diagnostic (Gelman et al., 1992) of the following monitored parameters for a random-effects pairwise meta-analysis:
EM |
The estimated summary effect measure (according to the
argument |
EM_LOR |
The estimated summary odd ratio in the logarithmic scale when
|
tau |
The between-trial standard deviation. This element does not appear in the case of a fixed-effect pairwise meta-analysis. |
In a random-effects network meta-analysis, EM
refer to all possible
pairwise comparisons of interventions in the network. Furthermore,
tau
is typically assumed to be common for all observed comparisons
in the network.
Author(s)
Loukia M. Spineli
References
Gelman, A, Rubin, DB. Inference from iterative simulation using multiple sequences. Stat Sci 1992;7(4):457–72. doi: 10.1214/ss/1177011136
Mavridis D, White IR, Higgins JP, Cipriani A, Salanti G. Allowing for uncertainty due to missing continuous outcome data in pairwise and network meta-analysis. Stat Med 2015;34(5):721–41. doi: 10.1002/sim.6365
Spineli LM, Kalyvas C, Papadimitropoulou K. Quantifying the robustness of primary analysis results: A case study on missing outcome data in pairwise and network meta-analysis. Res Synth Methods 2021;12(4):475–90. doi: 10.1002/jrsm.1478
Spineli LM. An empirical comparison of Bayesian modelling strategies for missing binary outcome data in network meta-analysis. BMC Med Res Methodol 2019;19(1):86. doi: 10.1186/s12874-019-0731-y
Turner NL, Dias S, Ades AE, Welton NJ. A Bayesian framework to account for uncertainty due to missing binary outcome data in pairwise meta-analysis. Stat Med 2015;34(12):2062–80. doi: 10.1002/sim.6475
White IR, Higgins JP, Wood AM. Allowing for uncertainty due to missing data in meta-analysis–part 1: two-stage methods. Stat Med 2008;27(5):711–27. doi: 10.1002/sim.3008
See Also
Examples
data("pma.taylor2004")
# Read results from 'run_model' (using the default arguments)
res <- readRDS(system.file('extdata/res_taylor.rds', package = 'rnmamod'))
# Perform the sensitivity analysis (default arguments)
# Note: Ideally, set 'n_iter' to 10000 and 'n_burnin' to 1000
run_sensitivity(full = res,
assumption = "IDE-ARM",
var_misspar = 1,
n_chains = 3,
n_iter = 1000,
n_burnin = 100,
n_thin = 5)