6
$\begingroup$

I would be really grateful for help with the following.

I have two independent studies looking at treatment A on disease B.

Both give RRs of disease B according to treatment exposure for different age groups (<50 and >50).

Below is a hypothetical dataframe

df<-data.frame(rr=c(.50,.30,.60,.20),lb=c(.31,.18,.33,.09),
 ub=c(.82,.49,1.08,.44),study=c(1,1,2,2),
 agegroup=c("below","above","below","above"))
df$"logrr" <-log(df$rr)
df$"logub" <-log(df$ub)
df$"loglb" <-log(df$lb)
df$"se" <-(df$logub-df$loglb)/3.92

I want to perform a (meta-analysis) and a statistical test to determine whether the difference in the treatment effect between age groups is statistically significant (i.e. I would like a p-value to quote). The only data I have are the RRs and 95% CIs that I want to compare (i.e. I have no information regarding sample size).

Please would someone let me know a formula which I can input my data into.

I am using R if that helps.

$\endgroup$
6
  • 1
    $\begingroup$ I don't have the time right now to turn this into a complete answer, but basically everything you are asking about is covered here: metafor-project.org/doku.php/… $\endgroup$
    – Wolfgang
    Commented Mar 5, 2016 at 15:56
  • $\begingroup$ Thank you @Wolfgang. Your link contains everything that I need to do the test. I just wanted to double check that it is OK to use the (Separate Meta-Analyses) method in my situation. In your example, you compare completely separate studies (i.e. with different alloc), whereas I compare subgroups (i.e. either older or younger than 50) from the same studies (different participants in the subgroups but taken from the same studies). I am just worried that my subgroups are not independent in the same way that your studies are (given within study effects). $\endgroup$
    – John
    Commented Mar 26, 2016 at 9:13
  • $\begingroup$ I see. In that case, it would be better to compute the difference between the two log(RRs) (for older/younger) within the two studies and then pool those values to see if the pooled difference is significantly different from zero. If I understand you correctly, there are only 4 RRs here (two studies, with two subgroups each) -- so if you could add those RRs (and 95% CIs) to your question, I can show you how to do this. $\endgroup$
    – Wolfgang
    Commented Mar 26, 2016 at 14:38
  • $\begingroup$ Thank you @Wolfgang. I have amended the question to included example data, as requested. $\endgroup$
    – John
    Commented Mar 26, 2016 at 15:50
  • $\begingroup$ Thanks. I assume the study variable is supposed to be 1,1,2,2 (and not 1,2,1,2 as it is right now), right? $\endgroup$
    – Wolfgang
    Commented Mar 26, 2016 at 16:23

2 Answers 2

2
$\begingroup$

In this case, you should directly quantify the size of the interaction (between the treatment group variable and the age group variable) within studies. You can do this by taking the difference between the two log RRs within studies. The variance of the difference is just the sum of the two squared standard errors, since the two subgroups within trials consist of different individuals (below/above 50 years of age) and are therefore independent. So:

df.diff <- with(df, data.frame(study = 1:2,
                               yi = c(logrr[1]-logrr[2], logrr[3]-logrr[4]),
                               vi = c(se[1]^2 + se[2]^2, se[3]^2 + se[4]^2)))

So we get:

  study        yi        vi
1     1 0.5108256 0.1268421
2     2 1.0986123 0.2553729

Then you can meta-analyze these values:

res <- rma(yi, vi, data=df.diff)
res

This yields:

Random-Effects Model (k = 2; tau^2 estimator: REML)

tau^2 (estimated amount of total heterogeneity): 0 (SE = 0.2703)
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 = 1) = 0.9039, p-val = 0.3417

Model Results:

estimate       se     zval     pval    ci.lb    ci.ub
  0.7059   0.2911   2.4248   0.0153   0.1353   1.2765        *

---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

So, the estimated size of the interaction effect is $0.7059$, and since we computed (log RR for below 50) - (log RR for above 50), this value indicates that the log RR is on average $0.7059$ points higher in groups that are below 50 years of age. Or:

predict(res, transf=exp)

yields:

  pred  ci.lb  ci.ub  cr.lb  cr.ub
2.0256 1.1449 3.5839 1.1449 3.5839

which indicates that the RR is on average roughly twice as large in groups that are below 50 years of age.

I'll leave aside the question whether using random-effects models with $k=2$ is sensible or not, but since the estimated amount of heterogeneity is 0 anyway, we would obtain the same results if we had used a fixed-effects model (method="FE").

$\endgroup$
0
1
$\begingroup$

You could consider this as an example of meta-regression. You would set up your data frame to have columns for RR, CILB, CIUB, study, agegrp. Then you would enter both study and agregrp as moderators in the model. The effect for study is unimportant it is just there to take out study differences in overall treatment effect. The coefficient for agegrp would tell you about differences between the age groups. I assume you would do this all on the log scale and if you use the default contrasts in R the coefficient for agegrp when exponentiated would give you the relative relative risk if you see what I mean.

$\endgroup$
3
  • $\begingroup$ Thank you. I will try this if no one is able to provide an appropriate formula for performing a t-test or similar. If I use metafor package, for example, how do I code the agegrp for the purposes of meta-regression? All I know is if they are above or below 50. $\endgroup$
    – John
    Commented Mar 4, 2016 at 17:45
  • $\begingroup$ Make it a factor with two levels. Any labels would do: "above", "below" for instance. Then mods = ~ study + agegrp should do the job. $\endgroup$
    – mdewey
    Commented Mar 4, 2016 at 22:19
  • $\begingroup$ The page to which @wolfgang links in his comment above would be a better answer than mine. I read it last year but had completely forgotten about it. $\endgroup$
    – mdewey
    Commented Mar 6, 2016 at 14:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.