dat.linde2005.Rd
Results from 26 studies on the effectiveness of Hypericum perforatum extracts (St. John's wort) for treating depression.
dat.linde2005
The data frame contains the following columns:
id | numeric | study number |
study | character | study author(s) |
year | numeric | publication year |
country | character | study location |
ni | numeric | total sample size |
major | numeric | sample restricted to patients who met criteria for major depression |
baseline | numeric | HRSD baseline score |
version | numeric | HRSD version (17 or 21 items) |
duration | numeric | study duration (in weeks) |
prep | character | Hypericum extract preparation |
dosage | numeric | dosage (in mg) |
response | numeric | definition of response (see ‘Details’) |
ai | numeric | number of responses in treatment group |
n1i | numeric | number of patients in treatment group |
ci | numeric | number of responses in placebo group |
n2i | numeric | number of patients in placebo group |
group | numeric | stratification variable used by the authors (see ‘Details’) |
The dataset includes the results from 26 double-blind placebo-controlled trials on the effectiveness of Hypericum perforatum extracts (St. John's wort) for treating depression (note that 2 studies did not provide sufficient response information).
Data were extracted from Table 1 and Figure 3 from Linde et al. (2005). For study duration, the assessment week (instead of the total study duration) was coded for Philipp et al. (1999) and Montgomery et al. (2000). For dosage, the midpoint was coded when a range of values was given.
The definition of what constitutes a response
differed across studies and is coded as follows:
HRSD score reduction of at least 50% or HRSD score after therapy <10,
HRSD reduction of at least 50%,
based on HRSD scale but exact definition not reported,
global patient assessment of efficacy,
at least ‘much improved’ on the Clinical Global Impression sub-scale for global improvement.
The group
variable corresponds to the variable used by Linde et al. (2005) to stratify their analyses and is coded as follows:
smaller trials restricted to major depression,
larger trials restricted to major depression,
smaller trials not restricted to major depression,
larger trials not restricted to major depression.
Linde, K., Berner, M., Egger, M., & Mulrow, C. (2005). St John's wort for depression: Meta-analysis of randomised controlled trials. British Journal of Psychiatry, 186(2), 99–107. https://doi.org/10.1192/bjp.186.2.99
Viechtbauer, W. (2007). Accounting for heterogeneity via random-effects models and moderator analyses in meta-analysis. Zeitschrift für Psychologie / Journal of Psychology, 215(2), 104–121. https://doi.org/10.1027/0044-3409.215.2.104
medicine, psychiatry, risk ratios
### copy data into 'dat' and examine data
dat <- dat.linde2005
head(dat)
#> id study year country ni major baseline version duration prep dosage response
#> 1 1 Hoffman & Kuehl 1979 Germany 60 0 NA NA 6 Hyperforat NA 4
#> 2 2 Schlich et al. 1987 Germany 49 0 31.3 21 4 PsychotoninM 350 1
#> 3 3 Schmidt et al. 1989 Germany 40 0 29.4 21 4 PsychotoninM 500 1
#> 4 4 Halama 1991 Germany 50 0 18.2 17 4 LI160 900 1
#> 5 5 Harrer et al. 1991 Austria 120 0 21.3 NA 6 PsychotoninM 500 NA
#> 6 6 Osterheider et al. 1992 Germany 47 0 22.2 NA 8 PsychotoninM 500 3
#> ai n1i ci n2i group
#> 1 19 30 3 30 3
#> 2 15 25 3 24 3
#> 3 10 20 4 20 3
#> 4 10 25 0 25 3
#> 5 NA NA NA NA NA
#> 6 0 22 0 23 3
### load metafor package
library(metafor)
### remove studies with no response information and study with no responses in either group
dat <- dat[-c(5,6,26),]
### calculate log risk ratios and corresponding sampling variances
dat <- escalc(measure="RR", ai=ai, ci=ci, n1i=n1i, n2i=n2i, data=dat)
head(dat)
#>
#> id study year country ni major baseline version duration prep dosage response ai
#> 1 1 Hoffman & Kuehl 1979 Germany 60 0 NA NA 6 Hyperforat NA 4 19
#> 2 2 Schlich et al. 1987 Germany 49 0 31.3 21 4 PsychotoninM 350 1 15
#> 3 3 Schmidt et al. 1989 Germany 40 0 29.4 21 4 PsychotoninM 500 1 10
#> 4 4 Halama 1991 Germany 50 0 18.2 17 4 LI160 900 1 10
#> 7 7 Reh et al. 1992 Germany 50 0 19.5 21 8 Neuroplant 380 1 20
#> 8 8 Huebner et al. 1993 Germany 40 0 12.5 17 4 LI160 900 1 14
#> n1i ci n2i group yi vi
#> 1 30 3 30 3 1.8458 0.3193
#> 2 25 3 24 3 1.5686 0.3183
#> 3 20 4 20 3 0.9163 0.2500
#> 4 25 0 25 3 3.0445 2.0183
#> 7 25 11 25 4 0.5978 0.0609
#> 8 20 9 20 4 0.4418 0.0825
#>
### meta-analysis of the log risk ratios using a random-effects model
res <- rma(yi, vi, data=dat, method="DL")
res
#>
#> Random-Effects Model (k = 23; tau^2 estimator: DL)
#>
#> tau^2 (estimated amount of total heterogeneity): 0.1413 (SE = 0.0697)
#> tau (square root of estimated tau^2 value): 0.3759
#> I^2 (total heterogeneity / total variability): 73.94%
#> H^2 (total variability / sampling variability): 3.84
#>
#> Test for Heterogeneity:
#> Q(df = 22) = 84.4155, p-val < .0001
#>
#> Model Results:
#>
#> estimate se zval pval ci.lb ci.ub
#> 0.5574 0.1002 5.5631 <.0001 0.3610 0.7537 ***
#>
#> ---
#> Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#>
### mixed-effects meta-regression model with stratification variable
res <- rma(yi, vi, mods = ~ 0 + factor(group), data=dat, method="DL")
res
#>
#> Mixed-Effects Model (k = 23; tau^2 estimator: DL)
#>
#> tau^2 (estimated amount of residual heterogeneity): 0.0555 (SE = 0.0377)
#> tau (square root of estimated tau^2 value): 0.2357
#> I^2 (residual heterogeneity / unaccounted variability): 53.18%
#> H^2 (unaccounted variability / sampling variability): 2.14
#>
#> Test for Residual Heterogeneity:
#> QE(df = 19) = 40.5792, p-val = 0.0027
#>
#> Test of Moderators (coefficients 1:4):
#> QM(df = 4) = 68.4988, p-val < .0001
#>
#> Model Results:
#>
#> estimate se zval pval ci.lb ci.ub
#> factor(group)1 0.6826 0.1546 4.4138 <.0001 0.3795 0.9857 ***
#> factor(group)2 0.1548 0.1136 1.3622 0.1731 -0.0679 0.3774
#> factor(group)3 1.6681 0.2918 5.7166 <.0001 1.0962 2.2401 ***
#> factor(group)4 0.5442 0.1430 3.8056 0.0001 0.2639 0.8245 ***
#>
#> ---
#> Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#>
### predicted average risk ratio for each level of the stratification variable
predict(res, newmods=diag(4), transf=exp, digits=2)
#>
#> pred ci.lb ci.ub pi.lb pi.ub
#> 1 1.98 1.46 2.68 1.14 3.44
#> 2 1.17 0.93 1.46 0.70 1.95
#> 3 5.30 2.99 9.39 2.54 11.06
#> 4 1.72 1.30 2.28 1.00 2.96
#>