Słownik metodologiczny · Wielkość efektu

Model selekcji w metaanalizie – jak modelować proces publikacji?

Model selekcji szacuje efekt łączny, zakładając, że szansa publikacji badania zależy od jego wartości p. Pokazujemy funkcję schodkową, model 3PSM, przykład w R z selmodel(), opis do pracy i ograniczenia.

Strona główna / Słownik / Model selekcji w metaanalizie
W skrócie: Model selekcji łączy model efektów losowych z funkcją wag, która opisuje, jak szansa publikacji zależy od wartości p. Szacuje skorygowany efekt łączny i względną szansę publikacji wyników nieistotnych; najprostszy wariant z jednym progiem to 3PSM.

Co to jest model selekcji?

Model selekcji (ang. selection model) to metoda metaanalizy, która jawnie modeluje proces publikacji. Zakłada, że szansa trafienia badania do zbioru zależy od jego wartości p, i szacuje efekt, jaki dałyby wszystkie przeprowadzone badania. Hedges (1992) zaproponował schodkową funkcję selekcji w modelu efektów losowych, a Vevea i Hedges (1995) uogólnili ją na model z moderatorami, estymowany metodą największej wiarygodności.

Jak to działa?

Model ma dwie części. Pierwsza to zwykły model efektów losowych: średni efekt μ i heterogeniczność τ². Druga to funkcja wag, która dzieli jednostronne p na przedziały wyznaczone progami, np. .025 (dwustronne .05 w oczekiwanym kierunku). Pierwszy przedział ma wagę 1, a dla pozostałych model szacuje wagi δ, czyli względną szansę publikacji. Wariant z jednym progiem nazywa się 3PSM (trzy parametry: μ, τ², δ). Test ilorazu wiarygodności porównuje go z modelem bez selekcji, w którym wszystkie wagi równają się 1.

Przykład

Symulowana literatura: 36 opublikowanych badań, w tym 26 istotnych, prawdziwe d = 0.20. Model bez korekty zawyżył efekt do d = 0.37. Model selekcji z progiem .025 dał d = 0.20, 95% CI [0.07, 0.33]. Waga δ = 0.10 oznacza, że wynik nieistotny miał mniej więcej dziesięć razy mniejszą szansę publikacji niż istotny (w symulacji było to 15%). Selekcja była wyraźna: χ²(1) = 15.22, p < .001.

Jak opisać w pracy

W analizie wrażliwości dopasowano model selekcji z jednym progiem (p = .025, jednostronnie; Vevea i Hedges, 1995). Test ilorazu wiarygodności wskazał na selekcję, χ²(1) = 15.22, p < .001, δ = 0.10. Skorygowany efekt wyniósł d = 0.20, 95% CI [0.07, 0.33], wobec d = 0.37 bez korekty.

Na co uważać

  • Mało badań w przedziale. W przykładzie wagę δ szacowano z zaledwie 10 nieistotnych wyników. Więcej progów wymaga znacznie większej liczby badań.
  • Założenia. Model przyjmuje normalny rozkład prawdziwych efektów i selekcję wyłącznie według p. Inne źródła asymetrii zostaną błędnie przypisane selekcji.
  • Jedna z kilku korekt. Carter i in. (2019) nie znaleźli metody najlepszej we wszystkich warunkach, dlatego model selekcji warto zestawić z PET-PEESE, trim-and-fill i p-curve. Sam fail-safe N efektu nie koryguje.

Wszystkie metody na jednym zbiorze porównuje wpis Błąd publikacji w metaanalizie.

Przykład reprodukowalny

Model selekcji w R

Funkcja selmodel() z pakietu metafor dopasowuje model selekcji do obiektu z rma(). Kod używa schodkowej funkcji wag z jednym progiem, czyli modelu 3PSM.

Schodkowy model selekcji z progiem .025

Dane wejściowe: dane symulowane funkcją gen(): 120 badań dwóch grup (15–100 osób w grupie), prawdziwe d = 0.20, τ = 0.10; wyniki istotne i dodatnie „publikowano” zawsze, pozostałe z prawdopodobieństwem 15%; set.seed(387).

Co odczytać: skorygowany efekt (estimate) z przedziałem ufności, wagę δ dla przedziału 0.025 < p ≤ 1 oraz test ilorazu wiarygodności dla parametrów selekcji (LRT). Model selekcji jest estymowany metodą ML, dlatego τ² różni się od wyniku REML.

R
suppressPackageStartupMessages(library(metafor))
gen <- function(d, k) {                       # k badań; d – prawdziwy efekt (tau = 0.10)
  n  <- sample(15:100, k, replace = TRUE)     # osób w grupie
  yi <- sapply(n, function(m) { a <- rnorm(m, rnorm(1, d, 0.10)); b <- rnorm(m)
                                (mean(a) - mean(b)) / sqrt((var(a) + var(b)) / 2) })
  dat <- data.frame(n = n, yi = yi, vi = 2 / n + yi^2 / (4 * n))
  dat$sei <- sqrt(dat$vi)
  dat$p   <- 2 * pnorm(abs(dat$yi / dat$sei), lower.tail = FALSE)  # p dwustronne
  dat[(dat$p < .05 & dat$yi > 0) | runif(k) < .15, ]                 # „publikacja”
}
set.seed(387)
dat <- gen(0.2, 120)
re  <- rma(yi, vi, data = dat)
sm  <- selmodel(re, type = "stepfun", steps = 0.025, alternative = "greater")
sm
Wynik w R

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

tau^2 (estimated amount of total heterogeneity): 0.0099 (SE = 0.0102)
tau (square root of estimated tau^2 value):      0.0996

Test for Heterogeneity:
LRT(df = 1) = 1.4167, p-val = 0.2340

Model Results:

estimate      se    zval    pval   ci.lb   ci.ub
  0.2012  0.0672  2.9944  0.0027  0.0695  0.3328  **

Test for Selection Model Parameters:
LRT(df = 1) = 15.2194, p-val < .0001

Selection Model Results:

                     k  estimate      se      zval    pval   ci.lb   ci.ub
0     < p <= 0.025  26    1.0000     ---       ---     ---     ---     ---
0.025 < p <= 1      10    0.1044  0.0645  -13.8831  <.0001  0.0000  0.2308  ***

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

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

Co to jest 3PSM?

Trójparametrowy model selekcji: średni efekt, heterogeniczność τ² i jedna waga δ dla wyników powyżej progu (zwykle jednostronne p = .025). To najczęściej stosowany wariant modelu selekcji.

Jak interpretować wagę δ w modelu selekcji?

To względna szansa publikacji wyniku z danego przedziału p w porównaniu z wynikami istotnymi. δ = 0.10 oznacza, że wynik nieistotny trafia do literatury mniej więcej dziesięć razy rzadziej.

Jak dopasować model selekcji w R?

W pakiecie metafor: najpierw res <- rma(yi, vi), potem selmodel(res, type = "stepfun", steps = 0.025, alternative = "greater"). Odczytaj skorygowany efekt, wagi δ i test ilorazu wiarygodności.

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. Carter, E. C., Schönbrodt, F. D., Gervais, W. M., & Hilgard, J. (2019). Correcting for bias in psychology: A comparison of meta-analytic methods. Advances in Methods and Practices in Psychological Science, 2(2), 115–144. https://doi.org/10.1177/2515245919847196 ● Otwarty dostęp: pełny tekst
  2. Hedges, L. V. (1992). Modeling publication selection effects in meta-analysis. Statistical Science, 7(2), 246–255. https://doi.org/10.1214/ss/1177011364 ● Otwarty dostęp
  3. Vevea, J. L., & Hedges, L. V. (1995). A general linear model for estimating effect size in the presence of publication bias. Psychometrika, 60(3), 419–435. https://doi.org/10.1007/bf02294384

Cytowania BibTeX

@article{carter2019correcting, author={Carter, Evan C. and Schönbrodt, Felix D. and Gervais, Will M. and Hilgard, Joseph}, title={{Correcting for bias in psychology: A comparison of meta-analytic methods}}, journal={Advances in Methods and Practices in Psychological Science}, year={2019}, volume={2}, number={2}, pages={115--144}, doi={10.1177/2515245919847196}}
@article{hedges1992modeling, author={Hedges, Larry V.}, title={{Modeling publication selection effects in meta-analysis}}, journal={Statistical Science}, year={1992}, volume={7}, number={2}, pages={246--255}, doi={10.1214/ss/1177011364}}
@article{vevea1995general, author={Vevea, Jack L. and Hedges, Larry V.}, title={{A general linear model for estimating effect size in the presence of publication bias}}, journal={Psychometrika}, year={1995}, volume={60}, number={3}, pages={419--435}, doi={10.1007/bf02294384}}
R