frag.ma | R Documentation |
Produces results, such as fragility index, fragility quotient, and event status modifications for altering statistical significance, of a meta-analysis with a binary outcome.
frag.ma(e0, n0, e1, n1, data, measure = "OR", alpha = 0.05, mod.dir = "both", OR = 1, RR = 1, RD = 0, method = "DL", test = "z", ...)
e0 |
a numeric vector or the corresponding column name in the argument |
n0 |
a numeric vector or the corresponding column name in the argument |
e1 |
a numeric vector or the corresponding column name in the argument |
n1 |
a numeric vector or the corresponding column name in the argument |
data |
an optional data frame containing the dataset of the collected studies in the meta-analysis with a binary outcome. If |
measure |
a character string indicating the measure of treatment effect (i.e., effect size) for the binary outcome. It should be one of |
alpha |
a numeric value between 0 and 1, indicating the statistical significance level (the default is 0.05). It determines the confidence level (1-α)\times100\% of the confidence interval when deriving the fragility index/quotient. |
mod.dir |
a character string indicating the direction of the confidence interval change due to event status modifications when the original confidence interval covers the null value (i.e., non-significance altered to significance). It is not used when significance is altered to non-significance. It should be one of |
OR |
a numeric positive value indicating the value of odds ratio under the null hypothesis (the default is 1). It is used only if the argument |
RR |
a numeric positive value indicating the value of relative risk under the null hypothesis (the default is 1). It is used only if the argument |
RD |
a numeric value between -1 indicating the value of risk difference under the null hypothesis (the default is 0). It is used only if the argument |
method |
a character string specifying the method for performing meta-analysis. It is passed to |
test |
a character string specifying how confidence intervals are derived. It is passed to |
... |
other arguments that can be passed to |
An object of class "frag.ma"
. The object is a list containing the following components:
data |
original data in the form of a data frame with six columns: event counts, non-event counts, and sample sizes in group 0 and those in group 1 among all studies in the meta-analysis. |
measure |
measure of treatment effect (i.e., effect size). |
alpha |
pre-specified statistical significance level. |
null |
value of odds ratio, relative risk, or risk difference (specified by |
est.ori |
the point estimate of the overall effect size based on the original meta-analysis. |
ci.ori |
the confidence interval of the overall effect size based on the original meta-analysis. |
pval.ori |
the p-value of the overall effect size based on the original meta-analysis. |
mod.dir |
the direction of the confidence interval change due to event status modifications when the original confidence interval covers the null value (i.e., non-significance altered to significance). |
FI |
fragility index. |
FQ |
fragility quotient. |
dir |
direction of the change of statistical significance. |
sid.iter |
study index(es) with event status modifications during the iterative algorithm. |
g0.mod.iter |
event status modification(s) in group 0 during the iterative algorithm. |
g1.mod.iter |
event status modification(s) in group 1 during the iterative algorithm. |
est.iter |
point estimate(s) of the overall effect size during the iterative algorithm. |
ci.iter |
confidence interval(s) of the overall effect size during the iterative algorithm. |
data.mod |
data with event status modification(s) that alter the significance or non-significance. |
If the significance or non-significance cannot be altered based on the given range of event status modifications, the fragility index and fragility quotient are defined to be NA
(not available).
Atal I, Porcher R, Boutron I, Ravaud P (2019). "The statistical significance of meta-analyses is frequently fragile: definition of a fragility index for meta-analyses." Journal of Clinical Epidemiology, 111, 32–40. <doi: 10.1016/j.jclinepi.2019.03.012>
Lin L, Chu H (2022). "Assessing and visualizing fragility of clinical results with binary outcomes in R using the fragility package." PLOS ONE, 17(6), e0268754. <doi: 10.1371/journal.pone.0268754>
frag.ma.alpha
for assessing fragility of a meta-analysis at multiple significance levels; frag.mas
for assessing fragility of multiple meta-analyses; frag.study
for assessing fragility of an individual study; and frag.nma
for assessing fragility of a network meta-analysis.
## Load datasets of meta-analyses on nutrition support data(dat.ns) ## Assess fragility of the 11th meta-analysis out1 <- frag.ma(e0, n0, e1, n1, data = dat.ns[dat.ns$ma.id == 11,]) out1 ## Visualize the process of event status modifications ## for altering the non-significance to significance plot(out1) ## Assess fragility based on relative risk out2 <- frag.ma(e0, n0, e1, n1, data = dat.ns[dat.ns$ma.id == 11,], measure = "RR") out2 ## Assess fragility based on risk difference out3 <- frag.ma(e0, n0, e1, n1, data = dat.ns[dat.ns$ma.id == 11,], measure = "RD") out3 ## Use the REML method to estimate the heterogeneity variance out4 <- frag.ma(e0, n0, e1, n1, data = dat.ns[dat.ns$ma.id == 11,], method = "REML") out4 ## Use the Hartung-Knapp-Sidik-Jonkman to derive ## the confidence interval in meta-analysis out5 <- frag.ma(e0, n0, e1, n1, data = dat.ns[dat.ns$ma.id == 11,], method = "REML", test = "knha") out5 ## Change the significance level to 0.005 out6 <- frag.ma(e0, n0, e1, n1, data = dat.ns[dat.ns$ma.id == 11,], alpha = 0.005) out6 plot(out6) ## Reduce the distance between the two lines by breaking the y-axis plot(out6, ybreaks = c(5, 9)) ## Suppress the markers of study IDs around the lines plot(out6, ybreaks = c(5, 9), study.marker = FALSE) ## Change the size of markers of study IDs plot(out6, ybreaks = c(5, 9), cex.marker = 0.5) ## Change the distance between the markers of study IDs and the lines plot(out6, ybreaks = c(5, 9), offset.marker = 0) ## Change the colors and width of the lines plot(out6, ybreaks = c(5, 9), col.line = c("gray", "orange"), lwd = 2) ## Change the location of the legend plot(out6, ybreaks = c(5, 9), x.legend = "topleft") ## Assess fragility of the first meta-analysis; ## it takes longer time out7 <- frag.ma(e0, n0, e1, n1, data = dat.ns[dat.ns$ma.id == 1,]) out7 plot(out7) plot(out7, ybreaks = c(840, 880)) ## Achieve significance by moving the CI based on the direction of the ## original overall effect size estimate out8 <- frag.ma(e0, n0, e1, n1, data = dat.ns[dat.ns$ma.id == 1,], mod.dir = "one") out8 ## Achieve significance by moving the CI to the left side out9 <- frag.ma(e0, n0, e1, n1, data = dat.ns[dat.ns$ma.id == 1,], mod.dir = "left") out9 ## Achieve significance by moving the CI to the right side; ## it takes longer time than that moving the CI to the left side ## as the original overall effect size estimate was less than the null out10 <- frag.ma(e0, n0, e1, n1, data = dat.ns[dat.ns$ma.id == 1,], mod.dir = "right") out10 dev.new(width = 12, height = 6) plot(out10, cex.marker = 0.5)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.