Calculates ranking probabilities for AUC from a time-course MBNMA
rankauc(
mbnma,
lower_better = FALSE,
treats = NULL,
level = "treatments",
int.range = c(0, max(mbnma$network$data.ab$time)),
n.iter = mbnma$BUGSoutput$n.sims,
subdivisions = 100,
...
)
A named list whose elements include:
summary.rank
A data frame containing
mean, sd, and quantiles for the ranks of each treatment given in treats
prob.matrix
A matrix of the proportions of MCMC results for which each
treatment/class in treats
ranked in which position for the given parameter
rank.matrix
A matrix of the ranks of MCMC results for each treatment/class in
treats
for the given parameter.
An S3 object of class "mbnma"
generated by running
a time-course MBNMA model
Indicates whether negative responses are better (lower_better=TRUE
) or
positive responses are better (lower_better=FALSE
)
A character vector of treatment/class names (depending on the value of level
). If left NULL`` then rankings will be calculated for all treatments/classes. Note that unlike
rank.mbnma()` this argument
cannot take a numeric vector.
Can take either "treatment"
to make predictions for treatments, or "class"
to make predictions for classes (in
which case object
must be a class effect model).
A numeric vector with two elements that indicates the range
over which to calculate AUC. Takes the form c(lower bound, upper bound). If left
as NULL
(the default) then the range will be between zero and the maximum follow-up
time in the dataset.
The number of iterations for which to calculate AUC (if "auc"
is included in params
).
Must be a positive integer. Default is the value used in mbnma
.
The number of subdivisions over which to integrate (see integrate
)
Arguments to be sent to R2jags for synthesis of the network
reference treatment effect (using ref.synth()
)
"auc"
can be specified in param
to rank treatments based on
Area Under the Curve (AUC). This accounts for the effect of multiple
time-course parameters simultaneously on the treatment response, but will
be impacted by the range of time over which AUC is calculated (int.range
).
This requires integration over int.range
and can take some time to run (particularly)
for spline functions as this uses the trapezoid method rather than adaptive quadrature).
Note that "auc"
can only be calculated at the treatment-level in class effect models.
As with other post-estimation functions, rank()
should only be performed on
models which have successfully converged. Note that rankings can be very sensitive to
even small changes in treatment effects and therefore failure to converge in only
one parameter may have substantial impact on rankings.