2

I want to perform a network meta analysis with studies containing multiple and single treatment arms.

Here is my data structure:

data.frame':    85 obs. of  5 variables:
 $ TE     : num  -0.758 -0.695 -0.288 -0.511 -0.288 ...

 $ seTE   : num  0.6191 0.2667 0.0341 0.0758 0.1178 ...

 $ treat1 : Factor w/ 31 levels "Boil_promo","Chem",..: 6 26 26 18 9 9 3 9 16 26 ...

 $ treat2 : Factor w/ 3 levels "Act","Pa","Pb": 2 2 2 2 2 3 3 2 2 2 ...

 $ studlab: Factor w/ 63 levels "Altmann2018",..: 1 2 3 4 5 6 7 8 8 9 ...

I have 4 studies with 2 treatment arms, 5 with 3 treatment arms, and 2 with 4 treatment arms. There are three types of control: Passive, Active and Placebo controls There are 31 treatment types in total.

After running the code below:

m.netmeta <- netmeta(TE = TE,
                     seTE = seTE,
                     treat1 = treat1,
                     treat2 = treat2,
                     studlab = paste(net.meta$studlab),
                     data = net.meta,
                     sm = "RR",
                     comb.fixed = TRUE,
                     comb.random = FALSE,
                     reference = "Pa",
                     details.chkmultiarm = TRUE,
                     sep.trts = " vs ")

I got this error:

Error: The following studies have a wrong number of comparisons: 'Brown2008', 'Crump2005', 'Ecrumen2015', 'Francis2016', 'Luby2004', 'Opryszko2010', 'Reller2003', 'Sinharoy2017'
  Please provide data for all treatment comparisons (two-arm: 1; three-arm: 3; four-arm: 6, ...).

Does anyone know how I can deal with this?

U. Windl
  • 3,480
  • 26
  • 54
Bisola
  • 21
  • 1
  • [See here](https://stackoverflow.com/q/5963269/5325862) on making a reproducible example that is easier for folks to help with. That includes a representative sample of data so people can run & debug your code – camille Nov 29 '20 at 23:21

1 Answers1

1

netmeta requires the data to have each pairwise comparison listed as a separate row for multi-arm studies. The error message you are getting suggests netmeta detects this has not occurred for some of the studies (namely, Brown2008, Crump2005, Ecrumen2015, Francis2016, Luby2004, Opryszko2010, Reller2003, Sinharoy2017).

Your post indicates many of your studies are multi-arm studies, and the information you have provided suggests you may not have set up your data in the format expected by netmeta. To give a couple examples:

  • Your description suggests you may be restricting what you put in treat2 (namely, only including active, passive, and placebo controls). What goes in treat2 is entirely dependent on the study composition. The hypothetical example below unpacks this more.

  • Your description of the study composition ("4 studies with 2 treatment arms, 5 with 3 treatment arms, and 2 with 4 treatment arms") does not seem to match up with the expected number of rows. For instance, why are there 63 levels for studlab? It is not clear to me how this pairs up with the expected 31 rows (corresponding to the number of pairwise comparisons): 4 studies with 2 treatment arms = 4 rows, 5 studies with 3 arms = 15 rows, and 2 studies with 4 treatment arms = 12 rows (4 + 15 + 12 = 31).

As an example, if Brown2008 has the arms MedicationX, MedicationY, and Placebo, you would need separate rows for MedicationX vs MedicationY, MedicationX vs Placebo, and MedicationY vs Placebo, not just MedicationX vs Placebo and MedicationY vs Placebo. I would recommend starting your debugging there.

The other thing that could possibly lead to that error is if you have separate publications that happen to have the same AuthorYear label. If that's the case, you can try appending the 'culprit' studies with unique identifiers.

Veritas
  • 11
  • 2