Co to jest problem wielokrotnych porównań?
Problem wielokrotnych porównań (ang. multiple comparisons problem) to wzrost ryzyka fałszywie istotnego wyniku, gdy w jednym badaniu wykonujesz wiele testów i każdy oceniasz na poziomie α. W psychologii dotyczy porównań par grup po ANOVA (testy post hoc), kilku wskaźników wyniku w jednym eksperymencie i macierzy korelacji. Brak korekty na wielokrotne porównania to częsty zarzut recenzentów.
FWER i FDR
FWER (ang. familywise error rate) to prawdopodobieństwo co najmniej jednego błędu I rodzaju w rodzinie testów. Dla k niezależnych testów, gdy wszystkie hipotezy zerowe są prawdziwe:
Przy czterech testach ryzyko jest więc prawie czterokrotnie wyższe niż deklarowane 5%. FDR (ang. false discovery rate) to oczekiwany odsetek fałszywych odkryć wśród wyników istotnych. Benjamini i Hochberg (1995) zaproponowali kontrolę FDR zamiast FWER, co daje wyraźny zysk mocy; stosuje się ją głównie w eksploracji wielu testów. Porównanie metod: Poprawki na wielokrotne porównania.
Korekta Holma krok po kroku
Procedura Holma kontroluje FWER bez względu na to, które hipotezy zerowe są prawdziwe (Holm, 1979), i nigdy nie daje mniej istotnych wyników niż korekta Bonferroniego z progiem α/k dla każdego testu:
- Uporządkuj wartości p rosnąco: p(1) ≤ … ≤ p(k).
- Porównuj p(i) z progiem α/(k − i + 1).
- Przy pierwszym przekroczeniu progu zatrzymaj się: ta i dalsze hipotezy zostają nieodrzucone.
Procedura Benjaminiego–Hochberga (BH) porównuje p(i) z progiem (i/k) × α i odrzuca hipotezy od pierwszej do największego i spełniającego ten warunek.
Przykład
Osiemdziesiąt osób przydzielono losowo do treningu uważności albo do grupy kontrolnej i porównano testem t Welcha na czterech wskaźnikach (dane symulowane):
| Wskaźnik | p | Próg Holma | Holm | Próg BH | BH |
|---|---|---|---|---|---|
| Stres | < .001 | .0125 | istotny | .0125 | istotny |
| Ruminacje | .015 | .0167 | istotny | .0250 | istotny |
| Lęk | .030 | .0250 | stop | .0375 | istotny |
| Jakość snu | .042 | .0500 | nieistotny | .0500 | istotny |
Bez korekty istotne są cztery wyniki, po korekcie Bonferroniego – jeden, Holma – dwa, a BH – cztery. Lęk przekroczył próg Holma (.030 > .025), więc procedura się zatrzymała.
Jak zapisać w pracy
Na co uważać
- Rodzina testów ustalona po wynikach. Rodzinę i metodę korekty określ przed analizą; szukanie korekty, która „da” istotność, to p-hacking.
- Mylenie FDR z FWER. BH dopuszcza pewien odsetek fałszywych odkryć – przy kilku hipotezach konfirmacyjnych wybierz Holma.
- „Po korekcie efektu nie ma”. Korekta obniża moc testu, więc nieistotny wynik nie dowodzi braku różnicy.
Pary grup po ANOVA porównuj testem Tukeya, a po teście Kruskala–Wallisa – testem Dunna.
Korekty Holma i BH w R
Kod symuluje cztery porównania z przykładu i koryguje wartości p funkcją p.adjust(). Liczby w tabeli i w opisie pochodzą z tego wyniku.
Bonferroni, Holm i Benjamini–Hochberg dla czterech testów
R
# Cztery testy t Welcha: trening uważności a grupa kontrolna (dane symulowane, wyniki standaryzowane)
set.seed(13080)
grupa <- rep(c("kontrola", "trening"), each = 40)
d <- c(stres = 0.6, ruminacje = 0.55, lek = 0.5, sen = 0.45) # efekty w populacji (d Cohena)
p <- sapply(d, function(ef) t.test(rnorm(80, mean = ef * (grupa == "kontrola")) ~ grupa)$p.value)
round(cbind(p, bonferroni = p.adjust(p, "bonferroni"), holm = p.adjust(p, "holm"),
BH = p.adjust(p, "BH")), 3)
round(0.05 / (4:1), 4) # progi Holma dla kolejnych p (od najmniejszego)
round(0.05 * (1:4) / 4, 4) # progi Benjaminiego–Hochberga
1 - (1 - 0.05)^c(4, 8) # FWER bez korekty dla 4 i 8 niezależnych testówWynik w R
p bonferroni holm BH
stres 0.000 0.000 0.000 0.000
ruminacje 0.015 0.060 0.045 0.030
lek 0.030 0.119 0.059 0.040
sen 0.042 0.166 0.059 0.042
[1] 0.0125 0.0167 0.0250 0.0500
[1] 0.0125 0.0250 0.0375 0.0500
[1] 0.1854938 0.3365796Bibliografia oprogramowania
Wyniki pochodzą z uruchomienia pokazanego kodu w R 4.5.3 (funkcje t.test() i p.adjust() z pakietu stats). W pracy podaj wersję R, której faktycznie użyto (sessionInfo()).
- 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/
Najczęstsze pytania
Czym różni się FWER od FDR?
FWER to prawdopodobieństwo co najmniej jednego fałszywego alarmu w całej rodzinie testów, a FDR – oczekiwany odsetek fałszywych odkryć wśród wyników istotnych. Kontrola FWER (np. Holm) jest surowsza, kontrola FDR daje większą moc.
Jak policzyć korektę Holma krok po kroku?
Uporządkuj wartości p rosnąco i porównuj kolejno z α/k, α/(k − 1) aż do α. Odrzucaj hipotezy do pierwszego przekroczenia progu, potem przerwij. W R: p.adjust(p, method = "holm").
Ile wynosi ryzyko fałszywego alarmu przy kilku testach?
Przy k niezależnych testach (α = .05, prawdziwe hipotezy zerowe) wynosi 1 − 0.95k: .185 przy czterech testach i .337 przy ośmiu. Testy skorelowane dają mniejsze ryzyko, ale nadal wyższe niż α.
Powiązane hasła
Poradniki, w których użyjesz tego pojęcia
Zarzuty recenzentów do statystyki
Piętnaście typowych uwag recenzentów do analiz – jak brzmią, skąd się biorą i jak im zapobiec, z symulacjami w R i listą kontrolną przed wysłaniem.
Czytaj →PoradnikANOVA krok po kroku
Jednoczynnikowa i dwuczynnikowa ANOVA na przykładach: założenia, test Welcha, post hoc, η² i ω², efekty proste, typy sum kwadratów i opis APA.
Czytaj →Potrzebujesz wsparcia w analizie danych?
Wybierz ofertę dopasowaną do pracy dyplomowej albo profesjonalnego projektu naukowego.
Wyceń analizęOferta dla studentówBibliografia i dalsza literatura naukowa (APA 7)
- Benjamini, Y., & Hochberg, Y. (1995). Controlling the false discovery rate: A practical and powerful approach to multiple testing. Journal of the Royal Statistical Society: Series B (Methodological), 57(1), 289–300. https://doi.org/10.1111/j.2517-6161.1995.tb02031.x
- Holm, S. (1979). A simple sequentially rejective multiple test procedure. Scandinavian Journal of Statistics, 6(2), 65–70. https://www.jstor.org/stable/4615733
Cytowania BibTeX
@article{benjamini1995controlling, author={Benjamini, Yoav and Hochberg, Yosef}, title={{Controlling the false discovery rate: A practical and powerful approach to multiple testing}}, journal={Journal of the Royal Statistical Society: Series B (Methodological)}, year={1995}, volume={57}, number={1}, pages={289--300}, doi={10.1111/j.2517-6161.1995.tb02031.x}}@article{holm1979simple, author={Holm, Sture}, title={{A simple sequentially rejective multiple test procedure}}, journal={Scandinavian Journal of Statistics}, year={1979}, volume={6}, number={2}, pages={65--70}, url={https://www.jstor.org/stable/4615733}}