Słownik metodologiczny · Wielkość efektu

Metaanaliza sieciowa – jak porównać wiele interwencji naraz?

Metaanaliza sieciowa łączy dowody bezpośrednie i pośrednie, by porównać wszystkie interwencje w jednym modelu. Pokazujemy założenia, przykład w metafor, opis do pracy i najczęstsze pułapki.

Strona główna / Słownik / Metaanaliza sieciowa
W skrócie: Metaanaliza sieciowa łączy badania porównujące różne pary interwencji i szacuje efekty wszystkich par, także tych bez badań bezpośrednich. Wymaga przechodniości i spójności dowodów bezpośrednich z pośrednimi.

Co to jest metaanaliza sieciowa?

Metaanaliza sieciowa (ang. network meta-analysis, NMA; także porównania mieszane, mixed treatment comparison) łączy w jednym modelu badania, które porównują różne pary interwencji stosowanych w tym samym problemie. Klasyczna metaanaliza zestawia dwie interwencje, a sieciowa szacuje efekty wszystkich par, także tych, których nikt nie porównał wprost. Salanti (2012) opisuje ją jako następne pokolenie syntezy danych: lepiej służy decyzjom niż metaanaliza par, ale opiera się na założeniu, które trudno sprawdzić.

Dowody bezpośrednie i pośrednie

Jeśli badania porównały A z C oraz B z C, różnicę A–B można oszacować pośrednio: log OR(A–B) = log OR(A–C) − log OR(B–C). Bucher i in. (1997) pokazali, że takie porównanie zachowuje randomizację, w przeciwieństwie do zestawiania samych ramion aktywnych z różnych badań. Wynik pośredni może jednak odbiegać od bezpośredniego, a siła wnioskowania jest ograniczona. Metaanaliza sieciowa łączy oba rodzaje dowodów w jeden spójny zestaw efektów względem interwencji odniesienia.

Założenia

  • Przechodniość. Badania różnych porównań muszą być podobne pod względem modyfikatorów efektu, np. nasilenia choroby czy czasu obserwacji.
  • Spójność. Dowody bezpośrednie i pośrednie na tę samą parę powinny się zgadzać – sprawdza to analiza niespójności w metaanalizie sieciowej.
  • Heterogeniczność. Zwykle przyjmuje się model efektów losowych ze wspólnym τ² dla wszystkich porównań; jego sens wyjaśnia hasło I² i τ².

Przykład

W zbiorze 24 badań nad rzucaniem palenia (dat.hasselblad1998) porównywano brak kontaktu, materiały samopomocowe oraz poradnictwo indywidualne i grupowe. Model kontrastów w metafor::rma.mv dał OR wobec braku kontaktu: samopomoc 1.48 [0.78, 2.77], poradnictwo indywidualne 1.99 [1.37, 2.89], grupowe 2.33 [1.14, 4.75]; τ² = 0.43. Poradnictwo grupowe porównano wprost z brakiem kontaktu tylko w dwóch badaniach, więc jego oszacowanie opiera się głównie na dowodach pośrednich. Poradnictwo grupowe wobec indywidualnego: OR = 1.17 [0.59, 2.30] – sieć nie rozstrzyga, które jest lepsze.

Jak opisać w pracy

W metaanalizie sieciowej z efektami losowymi (24 badania, 4 interwencje; model kontrastów, REML, wspólne τ² = 0.43) poradnictwo indywidualne (OR = 1.99, 95% CI [1.37, 2.89]) i grupowe (OR = 2.33, 95% CI [1.14, 4.75]) zwiększało szanse rzucenia palenia w porównaniu z brakiem kontaktu.

Na co uważać

  • Rzadka sieć. Wiele porównań opiera się na jednym lub dwóch badaniach.
  • Badania wieloramienne. Ich kontrasty są skorelowane; pominięcie kowariancji zawyża precyzję.
  • Ranking zamiast efektów. Ranking SUCRA nie zastępuje OR z przedziałami ufności.

Pełną analizę z rysunkiem sieci pokazuje wpis Metaanaliza sieciowa krok po kroku, a podstawy – Metaanaliza krok po kroku.

Przykład reprodukowalny

Metaanaliza sieciowa w R

Pakiet netmeta nie jest tu potrzebny: model kontrastów z efektami losowymi dopasowuje metafor::rma.mv, a kowariancję kontrastów z badań wieloramiennych podajemy w macierzy V.

Cztery interwencje antynikotynowe w jednej sieci

Dane wejściowe: zbiór dat.hasselblad1998 z pakietu metafor (24 badania nad rzucaniem palenia, 4 interwencje: brak kontaktu, samopomoc, poradnictwo indywidualne i grupowe; liczba osób, które rzuciły palenie, w każdym ramieniu).

Co odczytać: efekty (log OR) wobec braku kontaktu, τ², a z predict() – OR z 95% przedziałami ufności dla wszystkich par.

R
suppressPackageStartupMessages(library(metafor))
dat <- to.wide(dat.hasselblad1998, study = "study", grp = "trt",
               ref = "no_contact", grpvars = 6:7)           # 24 badania, format kontrastów
dat <- escalc(measure = "OR", ai = xi.1, n1i = ni.1, ci = xi.2, n2i = ni.2,
              add = 1/2, to = "all", data = dat)            # log OR każdego kontrastu
kow <- function(x) {                                        # kowariancja kontrastów z tym samym ramieniem
  v <- matrix(1 / (x$xi.2[1] + 1/2) + 1 / (x$ni.2[1] - x$xi.2[1] + 1/2), nrow(x), nrow(x))
  diag(v) <- x$vi
  v
}
V <- bldiag(lapply(split(dat, dat$study), kow))
dat <- contrmat(dat, grp1 = "trt.1", grp2 = "trt.2")
res <- rma.mv(yi, V, mods = ~ 0 + self_help + ind_counseling + grp_counseling,
              random = ~ comp | study, rho = 1/2, data = dat)   # model spójności, REML
res
predict(res, newmods = diag(3), transf = exp, digits = 2)     # OR wobec braku kontaktu
predict(res, newmods = rbind(c(-1, 1, 0), c(-1, 0, 1), c(0, -1, 1)),
        transf = exp, digits = 2)                             # ind–self, grp–self, grp–ind
Wynik w R
Multivariate Meta-Analysis Model (k = 26; method: REML)

Variance Components:

outer factor: study (nlvls = 24)
inner factor: comp  (nlvls = 6)

            estim    sqrt  fixed
tau^2      0.4324  0.6575     no
rho        0.5000            yes

Test for Residual Heterogeneity:
QE(df = 23) = 202.3334, p-val < .0001

Test of Moderators (coefficients 1:3):
QM(df = 3) = 14.2278, p-val = 0.0026

Model Results:

                estimate      se    zval    pval    ci.lb   ci.ub
self_help         0.3888  0.3221  1.2070  0.2274  -0.2426  1.0202
ind_counseling    0.6864  0.1904  3.6055  0.0003   0.3133  1.0596  ***
grp_counseling    0.8438  0.3641  2.3176  0.0205   0.1302  1.5574    *

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


  pred ci.lb ci.ub pi.lb pi.ub
1 1.48  0.78  2.77  0.35  6.20
2 1.99  1.37  2.89  0.52  7.60
3 2.33  1.14  4.75  0.53 10.14


  pred ci.lb ci.ub pi.lb pi.ub
1 1.35  0.70  2.58  0.32  5.71
2 1.58  0.72  3.43  0.35  7.10
3 1.17  0.59  2.30  0.27  5.02

Bibliografia oprogramowania

Wyniki pochodzą z uruchomienia pokazanego kodu w R 4.5.3 (pakiet metafor). W pracy podaj wersje faktycznie użytych pakietów (sessionInfo()).

  1. R: R Core Team. (2026). R: A language and environment for statistical computing (Version 4.5.3) [Computer software]. R Foundation for Statistical Computing. https://www.R-project.org/
  2. metafor (wersja 5.0.1): Viechtbauer, W. (2010). Conducting meta-analyses in R with the metafor package. Journal of Statistical Software, 36(3), 1–48. https://doi.org/10.18637/jss.v036.i03

Najczęstsze pytania

Czym metaanaliza sieciowa różni się od zwykłej metaanalizy?

Zwykła metaanaliza łączy badania jednej pary interwencji. Sieciowa obejmuje wiele interwencji naraz i dzięki porównaniom pośrednim szacuje także pary, których nie zestawiono w żadnym badaniu.

Jakie założenia musi spełniać metaanaliza sieciowa?

Przechodniość (badania różnych porównań są podobne pod względem modyfikatorów efektu) i spójność (dowody bezpośrednie i pośrednie na tę samą parę się zgadzają). Pierwszą ocenia się merytorycznie, drugą także testami niespójności.

Jak policzyć metaanalizę sieciową w R bez pakietu netmeta?

W metafor: dane w formacie kontrastów, macierz kowariancji dla badań wieloramiennych i rma.mv(yi, V, mods = ~ 0 + B + C, random = ~ comp | study, rho = 1/2). Efekty par odczytasz z predict().

Powiązane hasła

Poradniki, w których użyjesz tego pojęcia

Potrzebujesz wsparcia w analizie danych?

Wybierz ofertę dopasowaną do pracy dyplomowej albo profesjonalnego projektu naukowego.

Wyceń analizęOferta dla studentów

Bibliografia i dalsza literatura naukowa (APA 7)

  1. Bucher, H. C., Guyatt, G. H., Griffith, L. E., & Walter, S. D. (1997). The results of direct and indirect treatment comparisons in meta-analysis of randomized controlled trials. Journal of Clinical Epidemiology, 50(6), 683–691. https://doi.org/10.1016/s0895-4356(97)00049-8
  2. Salanti, G. (2012). Indirect and mixed-treatment comparison, network, or multiple-treatments meta-analysis: Many names, many benefits, many concerns for the next generation evidence synthesis tool. Research Synthesis Methods, 3(2), 80–97. https://doi.org/10.1002/jrsm.1037

Cytowania BibTeX

@article{bucher1997results, author={Bucher, Heiner C. and Guyatt, Gordon H. and Griffith, Lauren E. and Walter, Stephen D.}, title={{The results of direct and indirect treatment comparisons in meta-analysis of randomized controlled trials}}, journal={Journal of Clinical Epidemiology}, year={1997}, volume={50}, number={6}, pages={683--691}, doi={10.1016/s0895-4356(97)00049-8}}
@article{salanti2012indirect, author={Salanti, Georgia}, title={{Indirect and mixed-treatment comparison, network, or multiple-treatments meta-analysis: Many names, many benefits, many concerns for the next generation evidence synthesis tool}}, journal={Research Synthesis Methods}, year={2012}, volume={3}, number={2}, pages={80--97}, doi={10.1002/jrsm.1037}}
R