Słownik metodologiczny · Testy statystyczne

Test Dunnetta – kiedy porównujesz kilka grup z jedną kontrolą

Test Dunnetta porównuje po ANOVA każdą grupę eksperymentalną z jedną grupą kontrolną i kontroluje łączny błąd I rodzaju. Pokazujemy, jak działa, przykład w R i gotowe zdanie do pracy.

Strona główna / Słownik / Test Dunnetta
W skrócie: Test Dunnetta porównuje każdą z k − 1 grup eksperymentalnych z jedną grupą kontrolną i utrzymuje łączny błąd I rodzaju na poziomie α. Wykonuje mniej porównań niż test Tukeya, więc ma niższy próg i więcej mocy, ale nie porównuje grup eksperymentalnych między sobą.

Co to jest test Dunnetta?

Test Dunnetta (ang. Dunnett’s test) to procedura porównań wielokrotnych po ANOVA, w której każdą grupę eksperymentalną porównuje się tylko z jedną grupą kontrolną, a łączny błąd I rodzaju w tej rodzinie porównań nie przekracza α. Opisał go Dunnett (1955). Pasuje do badań, w których pytanie brzmi: „które warianty interwencji różnią się od kontroli?”, a porównania wariantów między sobą nie są celem.

Jak działa?

Przy k grupach test wykonuje tylko k − 1 porównań, a nie k(k − 1)/2 jak test Tukeya. Statystyka to zwykłe t = (Mj − MK) / √[MSW(1/nj + 1/nK)], ale wartość krytyczną bierze się z rozkładu, który uwzględnia, że wszystkie porównania dzielą tę samą grupę kontrolną. Mniej porównań oznacza niższy próg niż w teście Tukeya, czyli więcej mocy.

Przykład

Osiemdziesiąt osób po symulowanym egzaminie losowo przydzielono do grupy kontrolnej albo do jednej z trzech krótkich technik relaksacji, po 20 osób (dane symulowane). Stres (0–40 pkt) wyniósł: kontrola M = 26.05, oddech 18.30, muzyka 21.75, ruch 24.30. Próg |t| w teście Dunnetta to 2.40, w teście Tukeya 2.63, a bez korekty 1.99.

  • oddech a kontrola: −7.75, 95% CI [−12.33, −3.17], p < .001;
  • muzyka a kontrola: −4.30, 95% CI [−8.88, 0.28], p = .071 (t = −2.25 przekracza próg bez korekty, ale nie próg Dunnetta);
  • ruch a kontrola: −1.75, 95% CI [−6.33, 2.83], p = .685.

Jak opisać w pracy

Każdą technikę relaksacji porównano z grupą kontrolną testem Dunnetta. Istotnie niższy stres niż w grupie kontrolnej (M = 26.05) wystąpił tylko po ćwiczeniu oddechowym (M = 18.30), różnica = −7.75, 95% CI [−12.33, −3.17], p < .001. Różnice dla muzyki (p = .071) i ruchu (p = .685) nie były istotne.

Na co uważać

  • Grupę kontrolną wskaż przed analizą. W R jest nią pierwszy poziom czynnika. Zmiana grupy odniesienia po obejrzeniu wyników to inna rodzina porównań.
  • Test zakłada równe wariancje. Lee i Lee (2018) przy naruszeniu tego założenia wskazują procedury bez niego, m.in. T3 i C Dunnetta albo test Gamesa–Howella.
  • Brak porównań między technikami. Test nie mówi, czy oddech działa lepiej niż muzyka. Jeśli to ważne, wybierz inny test post hoc albo zaplanuj kontrasty.

Wybór procedury i zapis wyników omawiamy we wpisie Poprawki na wielokrotne porównania.

Przykład reprodukowalny

Test Dunnetta w R

Kod liczy średnie, test Dunnetta w pakiecie multcomp (skorygowane p i równoczesne 95% CI) oraz porównuje progi |t| Dunnetta, Tukeya i testu bez korekty.

glht() z kontrastami Dunnetta

Dane wejściowe: stres (0–40 pkt) w grupie kontrolnej i po trzech technikach relaksacji, po 20 osób (dane symulowane, set.seed(232)).

Co odczytać: Estimate i Pr(>|t|) z summary(), granice lwr i upr z confint() oraz trzy progi |t| na końcu.

R
set.seed(232)   # stres (0–40 pkt) po 3 krótkich technikach relaksacji i w grupie kontrolnej, po 20 osób (dane symulowane)
grupa <- factor(rep(c("kontrolna", "oddech", "muzyka", "ruch"), each = 20),
                levels = c("kontrolna", "oddech", "muzyka", "ruch"))   # pierwszy poziom = grupa kontrolna
stres <- round(rnorm(80, mean = c(24, 20, 22, 21)[grupa], sd = 6))
round(sapply(split(stres, grupa), function(x) c(M = mean(x), SD = sd(x))), 2)
model <- aov(stres ~ grupa)
dun <- multcomp::glht(model, linfct = multcomp::mcp(grupa = "Dunnett"))
summary(dun)                          # różnice wobec kontroli i p z korektą Dunnetta
(ci <- confint(dun))                  # równoczesne 95% CI
round(c(Dunnett = attr(ci$confint, "calpha"), Tukey = qtukey(0.95, 4, 76) / sqrt(2), bez_korekty = qt(0.975, 76)), 2)
Wynik w R
   kontrolna oddech muzyka  ruch
M      26.05  18.30  21.75 24.30
SD      5.09   6.47   6.41  6.11

	 Simultaneous Tests for General Linear Hypotheses

Multiple Comparisons of Means: Dunnett Contrasts


Fit: aov(formula = stres ~ grupa)

Linear Hypotheses:
                        Estimate Std. Error t value Pr(>|t|)
oddech - kontrolna == 0   -7.750      1.911  -4.056   <0.001 ***
muzyka - kontrolna == 0   -4.300      1.911  -2.250   0.0707 .
ruch - kontrolna == 0     -1.750      1.911  -0.916   0.6850
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Adjusted p values reported -- single-step method)


	 Simultaneous Confidence Intervals

Multiple Comparisons of Means: Dunnett Contrasts


Fit: aov(formula = stres ~ grupa)

Quantile = 2.3964
95% family-wise confidence level


Linear Hypotheses:
                        Estimate lwr      upr
oddech - kontrolna == 0  -7.7500 -12.3292  -3.1708
muzyka - kontrolna == 0  -4.3000  -8.8792   0.2792
ruch - kontrolna == 0    -1.7500  -6.3292   2.8292

    Dunnett       Tukey bez_korekty
       2.40        2.63        1.99

Bibliografia oprogramowania

Wyniki pochodzą z uruchomienia pokazanego kodu w R 4.5.3 (funkcje aov(), qtukey() i qt() z pakietu stats oraz glht() z pakietu multcomp). Skorygowane p w multcomp liczy się numerycznie, dlatego kod ustala ziarno losowania.

  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. multcomp (wersja 1.4-30): Hothorn, T., Bretz, F., & Westfall, P. (2008). Simultaneous inference in general parametric models. Biometrical Journal, 50(3), 346–363. https://doi.org/10.1002/bimj.200810425

Najczęstsze pytania

Kiedy wybrać test Dunnetta zamiast testu Tukeya?

Gdy interesuje Cię tylko porównanie każdej grupy z kontrolą. Mniej porównań daje niższy próg i więcej mocy. Jeśli chcesz porównać też grupy eksperymentalne między sobą, wybierz test Tukeya.

Jak ustawić grupę kontrolną w teście Dunnetta w R?

W multcomp grupą odniesienia jest pierwszy poziom czynnika. Ustaw go przez factor(..., levels = ...) albo relevel() przed dopasowaniem modelu.

Czy test Dunnetta może być jednostronny?

Tak, gdy przed badaniem zakładasz kierunek, np. tylko spadek stresu względem kontroli. Decyzję zapisz w planie analizy; wybór kierunku po obejrzeniu danych zawyża błąd I rodzaju.

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. Dunnett, C. W. (1955). A multiple comparison procedure for comparing several treatments with a control. Journal of the American Statistical Association, 50(272), 1096–1121. https://doi.org/10.1080/01621459.1955.10501294
  2. Lee, S., & Lee, D. K. (2018). What is the proper way to apply the multiple comparison test? Korean Journal of Anesthesiology, 71(5), 353–360. https://doi.org/10.4097/kja.d.18.00242 ● Otwarty dostęp

Cytowania BibTeX

@article{dunnett1955multiple, author={Dunnett, Charles W.}, title={{A multiple comparison procedure for comparing several treatments with a control}}, journal={Journal of the American Statistical Association}, year={1955}, volume={50}, number={272}, pages={1096--1121}, doi={10.1080/01621459.1955.10501294}}
@article{lee2018what, author={Lee, Sangseok and Lee, Dong Kyu}, title={{What is the proper way to apply the multiple comparison test?}}, journal={Korean Journal of Anesthesiology}, year={2018}, volume={71}, number={5}, pages={353--360}, doi={10.4097/kja.d.18.00242}}
R