Co to jest test znaków?
Test znaków (ang. sign test) to najprostszy test nieparametryczny dla dwóch pomiarów tych samych osób albo dla jednej próby porównywanej z hipotetyczną medianą. Bierze pod uwagę tylko znak różnicy w każdej parze: plus, minus albo zero. Dixon i Mood (1946) opisali go jako prosty sposób oceny, czy jedno z dwóch postępowań jest lepsze. Zaznaczyli przy tym, że gdy różnice da się porównywać co do wielkości, wydajniejsze są testy, które z tej wielkości korzystają.
Jak to działa
Przy hipotezie zerowej, że mediana różnic wynosi 0, plus i minus są jednakowo prawdopodobne. Liczba minusów wśród m par z niezerową różnicą ma więc rozkład dwumianowy z prawdopodobieństwem sukcesu 0.5, a wartość p daje dokładny test dwumianowy. Pary bez zmiany (remisy) zwykle się pomija. Coakley i Heise (1996) porównali wiele sposobów postępowania z remisami i pokazali, że wybór ma znaczenie, gdy zer jest dużo.
W porównaniu z testem Wilcoxona test znaków nie wymaga rangowania wielkości różnic, więc nadaje się też do ocen typu „lepiej / gorzej”. Gdy różnice są liczbowe, test Wilcoxona albo test t dla prób zależnych zwykle ma większą moc. Dla zmiennej tak/nie przed i po odpowiednikiem jest test McNemara, który też korzysta tylko z par, które zmieniły odpowiedź.
Przykład
W symulowanych danych 18 pacjentów oceniło ból na skali NRS przed terapią i po niej. U 12 osób ból się zmniejszył, u 2 zwiększył, a u 4 się nie zmienił. Test dwumianowy dla 12 z 14 par dał p = .013; odsetek popraw wyniósł .86, 95% CI [.57, .98], a mediana różnic −1 punkt. Test Wilcoxona na tych samych danych, korzystający z wielkości zmian, dał p = .006. Krok po kroku oba testy opisuje poradnik testy nieparametryczne krok po kroku.
Jak opisać w pracy
Na co uważać
- Utrata informacji. Różnica o 1 i o 6 punktów liczy się tak samo; przy danych liczbowych rozważ najpierw test Wilcoxona.
- Remisy w raporcie. Podaj liczbę par bez zmiany i to, co z nimi zrobiono.
- Same p. Dodaj liczby plusów i minusów oraz medianę różnic.
Test znaków w R
Kod symuluje ocenę bólu przed i po terapii, liczy znaki różnic, wykonuje dokładny test dwumianowy na parach z niezerową różnicą i porównuje wynik z testem Wilcoxona.
Test znaków dla dwóch pomiarów
R
set.seed(4331)
n <- 18 # ból NRS 0–10 przed i po terapii u tych samych osób
przed <- sample(3:9, n, replace = TRUE)
po <- pmax(0, pmin(10, przed - sample(c(-1, 0, 0, 1, 1, 2, 3), n, replace = TRUE)))
roznica <- po - przed
table(sign(roznica)) # -1 = poprawa, 0 = bez zmian, 1 = pogorszenie
k <- sum(roznica < 0); m <- sum(roznica != 0) # zera (remisy) pomijamy
binom.test(k, m) # domyślnie prawdopodobieństwo 0.5
median(roznica)
wilcox.test(po, przed, paired = TRUE, exact = FALSE)$p.valueWynik w R
-1 0 1
12 4 2
Exact binomial test
data: k and m
number of successes = 12, number of trials = 14, p-value = 0.01294
alternative hypothesis: true probability of success is not equal to 0.5
95 percent confidence interval:
0.5718708 0.9822055
sample estimates:
probability of success
0.8571429
[1] -1
[1] 0.005694743Bibliografia oprogramowania
Wyniki pochodzą z uruchomienia pokazanego kodu w R 4.5.3 (bez dodatkowych pakietów). W pracy podaj wersje faktycznie użytych pakietów (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
Kiedy wybrać test znaków zamiast testu Wilcoxona?
Gdy znasz tylko kierunek zmiany (lepiej / gorzej) albo wielkości różnic nie da się sensownie uporządkować. Przy różnicach liczbowych test Wilcoxona zwykle ma większą moc.
Co zrobić z parami bez zmiany w teście znaków?
Najczęściej pomija się je i liczy test na pozostałych parach, podając ich liczbę w raporcie. Coakley i Heise (1996) porównali też wersje testu, które uwzględniają remisy.
Jak policzyć test znaków w R?
Funkcją binom.test(k, m), gdzie k to liczba różnic ujemnych (albo dodatnich), a m to liczba par z niezerową różnicą. Gotową funkcję SignTest() ma też pakiet DescTools.
Powiązane hasła
Poradniki, w których użyjesz tego pojęcia
Testy nieparametryczne krok po kroku
Kiedy test rangowy ma sens, Mann–Whitney, Wilcoxon, Kruskal–Wallis z testem Dunna i Friedman na jednym badaniu – z wielkością efektu i opisem APA.
Czytaj →PoradnikWielkość efektu w testach nieparametrycznych
r = Z/√N, korelacja rangowo-biseryjna, delta Cliffa, A Varghi–Delaneya, ε² i W Kendalla: co mierzą, jak je przeliczać i podać z CI – z kodem R.
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)
- Coakley, C. W., & Heise, M. A. (1996). Versions of the sign test in the presence of ties. Biometrics, 52(4), 1242–1251. https://doi.org/10.2307/2532840
- Dixon, W. J., & Mood, A. M. (1946). The statistical sign test. Journal of the American Statistical Association, 41(236), 557–566. https://doi.org/10.1080/01621459.1946.10501898
Cytowania BibTeX
@article{coakley1996versions, author={Coakley, Clint W. and Heise, Mark A.}, title={{Versions of the sign test in the presence of ties}}, journal={Biometrics}, year={1996}, volume={52}, number={4}, pages={1242--1251}, doi={10.2307/2532840}}@article{dixon1946statistical, author={Dixon, W. J. and Mood, A. M.}, title={{The statistical sign test}}, journal={Journal of the American Statistical Association}, year={1946}, volume={41}, number={236}, pages={557--566}, doi={10.1080/01621459.1946.10501898}}