Results from controlled and uncontrolled studies on the effectiveness of allogeneic bone-marrow transplantation (BMT) and conventional chemotherapy (CMO) in the treatment of acute nonlymphocytic leukemia.

dat.begg1989

Format

The data frame contains the following columns:

studynumericstudy number
trtcharactertreatment (BMT or CMO)
armsnumericnumber of arms in the study (1 = uncontrolled studies; 2 = controlled studies)
yinumeric2-year disease-free survival rates
seinumericcorresponding standard errors
vinumericcorresponding sampling variances

Details

The dataset includes the results from controlled and uncontrolled studies on the 2-year disease-free survival rate in patients with acute nonlymphocytic leukemia receiving either allogeneic bone-marrow transplantation (BMT) or conventional chemotherapy (CMO). In the controlled (two-arm) studies (studies 1-4), a cohort of patients in complete remission and potentially eligible for BMT was assembled, and those who consented and for whom a donor could be found received BMT, with the remaining patients used as controls (receiving CMO). In the uncontrolled (one-arm) studies (studies 5-16), only a single group was studied, receiving either BMT or CMO.

The data in this dataset were obtained from Table 1 in Begg and Pilote (1991, p. 902).

Source

Begg, C. B., & Pilote, L. (1991). A model for incorporating historical controls into a meta-analysis. Biometrics, 47(3), 899–906. https://doi.org/10.2307/2532647

References

Begg, C. B., Pilote, L., & McGlave, P. B. (1989). Bone marrow transplantation versus chemotherapy in acute non-lymphocytic leukemia: A meta-analytic review. European Journal of Cancer and Clinical Oncology, 25(11), 1519–1523. https://doi.org/10.1016/0277-5379(89)90291-5

Concepts

medicine, oncology, single-arm studies, multilevel models

Examples

### copy data into 'dat' and examine data
dat <- dat.begg1989
dat
#> 
#>    study trt arms     yi   sei     vi 
#> 1      1 BMT    2 0.4600 0.118 0.0139 
#> 2      1 CMO    2 0.2500 0.074 0.0055 
#> 3      2 BMT    2 0.5000 0.100 0.0100 
#> 4      2 CMO    2 0.2300 0.067 0.0045 
#> 5      3 BMT    2 0.4700 0.129 0.0166 
#> 6      3 CMO    2 0.4200 0.086 0.0074 
#> 7      4 BMT    2 0.7000 0.230 0.0529 
#> 8      4 CMO    2 0.4800 0.167 0.0279 
#> 9      5 BMT    1 0.4600 0.081 0.0066 
#> 10     6 BMT    1 0.4300 0.034 0.0012 
#> 11     7 BMT    1 0.4900 0.088 0.0077 
#> 12     8 BMT    1 0.5300 0.079 0.0062 
#> 13     9 CMO    1 0.2100 0.051 0.0026 
#> 14    10 CMO    1 0.3200 0.039 0.0015 
#> 15    11 CMO    1 0.4800 0.094 0.0088 
#> 16    12 CMO    1 0.2600 0.046 0.0021 
#> 17    13 CMO    1 0.3300 0.029 0.0008 
#> 18    14 CMO    1 0.3800 0.033 0.0011 
#> 19    15 CMO    1 0.2400 0.084 0.0071 
#> 20    16 CMO    1 0.5300 0.084 0.0071 
#> 

### load metafor package
library(metafor)

### turn trt and arms into factors and set reference levels
dat$trt  <- relevel(factor(dat$trt), ref="CMO")
dat$arms <- relevel(factor(dat$arms), ref="2")

### create data frame with the treatment differences for the controlled studies
dat2 <- data.frame(yi = dat$yi[c(1,3,5,7)] - dat$yi[c(2,4,6,8)],
                   vi = dat$vi[c(1,3,5,7)] + dat$vi[c(2,4,6,8)])
dat2
#>     yi       vi
#> 1 0.21 0.019400
#> 2 0.27 0.014489
#> 3 0.05 0.024037
#> 4 0.22 0.080789

### DerSimonian and Laird method using the treatment differences
res <- rma(yi, vi, data=dat2, method="DL", digits=2)
res
#> 
#> Random-Effects Model (k = 4; tau^2 estimator: DL)
#> 
#> tau^2 (estimated amount of total heterogeneity): 0 (SE = 0.02)
#> tau (square root of estimated tau^2 value):      0
#> I^2 (total heterogeneity / total variability):   0.00%
#> H^2 (total variability / sampling variability):  1.00
#> 
#> Test for Heterogeneity:
#> Q(df = 3) = 1.28, p-val = 0.73
#> 
#> Model Results:
#> 
#> estimate    se  zval  pval  ci.lb  ci.ub     
#>     0.20  0.08  2.59  <.01   0.05   0.34  ** 
#> 
#> ---
#> Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#> 

### Begg & Pilote (1991) model incorporating the uncontrolled studies
res <- rma.mv(yi, vi, mods = ~ trt, random = ~ 1 | study,
              data=dat, method="ML", digits=2)
res
#> 
#> Multivariate Meta-Analysis Model (k = 20; method: ML)
#> 
#> Variance Components:
#> 
#>            estim  sqrt  nlvls  fixed  factor 
#> sigma^2     0.00  0.04     16     no   study 
#> 
#> Test for Residual Heterogeneity:
#> QE(df = 18) = 27.65, p-val = 0.07
#> 
#> Test of Moderators (coefficient 2):
#> QM(df = 1) = 16.50, p-val < .01
#> 
#> Model Results:
#> 
#>          estimate    se   zval  pval  ci.lb  ci.ub      
#> intrcpt      0.32  0.02  16.47  <.01   0.28   0.36  *** 
#> trtBMT       0.15  0.04   4.06  <.01   0.08   0.22  *** 
#> 
#> ---
#> Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#> 

### model involving bias terms for the uncontrolled studies
res <- rma.mv(yi, vi, mods = ~ trt + trt:arms, random = ~ 1 | study,
              data=dat, method="ML", digits=2)
res
#> 
#> Multivariate Meta-Analysis Model (k = 20; method: ML)
#> 
#> Variance Components:
#> 
#>            estim  sqrt  nlvls  fixed  factor 
#> sigma^2     0.00  0.03     16     no   study 
#> 
#> Test for Residual Heterogeneity:
#> QE(df = 16) = 26.72, p-val = 0.04
#> 
#> Test of Moderators (coefficients 2:4):
#> QM(df = 3) = 17.64, p-val < .01
#> 
#> Model Results:
#> 
#>               estimate    se   zval  pval  ci.lb  ci.ub      
#> intrcpt           0.30  0.05   6.63  <.01   0.21   0.39  *** 
#> trtBMT            0.20  0.08   2.64  <.01   0.05   0.35   ** 
#> trtCMO:arms1      0.03  0.05   0.52  0.60  -0.07   0.12      
#> trtBMT:arms1     -0.04  0.07  -0.56  0.58  -0.19   0.10      
#> 
#> ---
#> Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#> 

### model with a random treatment effect
res <- rma.mv(yi, vi, mods = ~ trt, random = list(~ 1 | study, ~ trt | study),
              struct="UN", tau2=c(0,NA), rho=0, data=dat, method="ML", digits=2)
res
#> 
#> Multivariate Meta-Analysis Model (k = 20; method: ML)
#> 
#> Variance Components:
#> 
#>            estim  sqrt  nlvls  fixed  factor 
#> sigma^2     0.00  0.04     16     no   study 
#> 
#> outer factor: study (nlvls = 16)
#> inner factor: trt   (nlvls = 2)
#> 
#>            estim  sqrt  k.lvl  fixed  level 
#> tau^2.1     0.00  0.00     12    yes    CMO 
#> tau^2.2     0.00  0.00      8     no    BMT 
#> 
#>      rho.CMO  rho.BMT    CMO  BMT 
#> CMO        1               -    4 
#> BMT     0.00        1    yes    - 
#> 
#> Test for Residual Heterogeneity:
#> QE(df = 18) = 27.65, p-val = 0.07
#> 
#> Test of Moderators (coefficient 2):
#> QM(df = 1) = 16.50, p-val < .01
#> 
#> Model Results:
#> 
#>          estimate    se   zval  pval  ci.lb  ci.ub      
#> intrcpt      0.32  0.02  16.47  <.01   0.28   0.36  *** 
#> trtBMT       0.15  0.04   4.06  <.01   0.08   0.22  *** 
#> 
#> ---
#> Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#> 

### model with a random treatment effect, but with equal variances in both arms
res <- rma.mv(yi, vi, mods = ~ trt, random = list(~ 1 | study, ~ trt | study),
              struct="CS", rho=0, data=dat, method="ML", digits=2)
res
#> 
#> Multivariate Meta-Analysis Model (k = 20; method: ML)
#> 
#> Variance Components:
#> 
#>            estim  sqrt  nlvls  fixed  factor 
#> sigma^2     0.00  0.00     16     no   study 
#> 
#> outer factor: study (nlvls = 16)
#> inner factor: trt   (nlvls = 2)
#> 
#>            estim  sqrt  fixed 
#> tau^2       0.00  0.04     no 
#> rho         0.00          yes 
#> 
#> Test for Residual Heterogeneity:
#> QE(df = 18) = 27.65, p-val = 0.07
#> 
#> Test of Moderators (coefficient 2):
#> QM(df = 1) = 15.60, p-val < .01
#> 
#> Model Results:
#> 
#>          estimate    se   zval  pval  ci.lb  ci.ub      
#> intrcpt      0.32  0.02  16.49  <.01   0.28   0.36  *** 
#> trtBMT       0.15  0.04   3.95  <.01   0.07   0.22  *** 
#> 
#> ---
#> Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#>