Słownik metodologiczny · Testy statystyczne

Test dokładny Fishera – kiedy zamiast chi-kwadrat i jak opisać wynik?

Test dokładny Fishera liczy dokładną wartość p dla tabeli 2 × 2, gdy liczebności oczekiwane są małe. Pokazujemy, jak działa, kiedy go wybrać i jak zapisać wynik z ilorazem szans.

Strona główna / Słownik / Test dokładny Fishera
W skrócie: Test dokładny Fishera sprawdza związek dwóch zmiennych dychotomicznych w tabeli 2 × 2, licząc wartość p dokładnie, bez przybliżenia rozkładem χ². Sięgnij po niego przy małych liczebnościach oczekiwanych i podaj dokładne p oraz iloraz szans z 95% przedziałem ufności.

Co to jest test dokładny Fishera?

Test dokładny Fishera (ang. Fisher's exact test, także test Fishera–Irwina) sprawdza, czy dwie zmienne dychotomiczne są związane, czyli czy odsetki w tabeli krzyżowej 2 × 2 różnią się między grupami. W odróżnieniu od testu chi-kwadrat nie korzysta z przybliżenia rozkładem χ², tylko liczy wartość p dokładnie. Jest przeznaczony zwłaszcza dla małych prób (Kim, 2017): badań pilotażowych, grup klinicznych, rzadkich zdarzeń.

Jak działa test Fishera?

Test traktuje sumy wierszy i kolumn jako stałe. Przy niezależności zmiennych prawdopodobieństwo każdej tabeli o tych samych sumach brzegowych wynika z rozkładu hipergeometrycznego:

P = [(a + b)! (c + d)! (a + c)! (b + d)!] / [N! a! b! c! d!]

a, b, c, d to liczebności komórek, N – liczebność próby, „!” – silnia. Dwustronne p to suma prawdopodobieństw wszystkich tabel nie bardziej prawdopodobnych niż zaobserwowana (reguła Irwina). Test nie ma statystyki ani stopni swobody.

Klasyczna reguła dopuszcza test chi-kwadrat, gdy najwyżej 20% komórek ma liczebność oczekiwaną poniżej 5 i żadna poniżej 1 (Kim, 2017) – w tabeli 2 × 2 łamie ją już jedna komórka. Campbell (2007) uznał jednak za optymalny test chi-kwadrat „N − 1”, gdy najmniejsza liczebność oczekiwana wynosi co najmniej 1, a test Fishera–Irwina – dopiero poniżej tej granicy.

Przykład

W pilotażu terapii ekspozycyjnej w VR dla osób z lękiem przed wystąpieniami publicznymi poprawę klinicznie istotną uzyskało 7 z 11 osób po terapii (63.6%) i 2 z 13 osób z listy oczekujących (15.4%; dane przykładowe). Dwie komórki mają liczebność oczekiwaną poniżej 5 (4.125 i 4.875). Test Fishera dał p = .033, a iloraz szans OR = 8.59, 95% CI [1.06, 119.94] – szeroki przedział wynika z małej próby. Podobny przykład zawiera poradnik statystyka w pracy z pedagogiki.

Jak zapisać w pracy

Podaj odsetki, dokładne p i OR z przedziałem ufności:

Poprawę klinicznie istotną uzyskało 7 z 11 osób po terapii (63.6%) i 2 z 13 osób z listy oczekujących (15.4%); ze względu na małe liczebności oczekiwane zastosowano test dokładny Fishera, p = .033, OR = 8.59, 95% CI [1.06, 119.94].

Na co uważać

  • „Dokładny” nie znaczy „najlepszy”. Test jest zachowawczy: rzeczywiste ryzyko błędu I rodzaju bywa niższe niż α, a moc – mniejsza. Lydersen i in. (2009) pokazują, że testy bezwarunkowe utrzymują poziom istotności i zwykle mają większą moc, a test Fishera w wersji mid-p daje podobne wyniki (w przykładzie mid-p = .023). Podobnie zachowawczy jest chi-kwadrat z poprawką Yatesa.
  • Iloraz szans z fisher.test() to estymator warunkowy (8.59), a nie zwykły iloraz (a × d)/(b × c) = 9.6 – napisz, który podajesz.
  • Jednostronne p z SPSS. Wiersz Fisher’s Exact Test ma kolumny Exact Sig. (2-sided) i (1-sided); przepisz dwustronną, chyba że kierunek hipotezy ustalono przed badaniem (zob. jak czytać wyniki SPSS).
  • Dane zależne. Dla odpowiedzi tak/nie tych samych osób przed i po interwencji użyj testu McNemara.
Przykład reprodukowalny

Test Fishera w R

Kod odtwarza przykład: liczebności oczekiwane, test Fishera z ilorazem szans i 95% przedziałem ufności oraz wartość mid-p. Liczby w tekście pochodzą z tego kodu.

Test dokładny Fishera dla tabeli 2 × 2

Dane wejściowe: tabela 2 × 2 z pilotażu terapii (dane przykładowe, N = 24).

Co odczytać: liczebności oczekiwane i ostrzeżenie o przybliżeniu χ², p-value, odds ratio z 95% CI oraz mid-p.

R
# Test dokładny Fishera – pilotaż terapii ekspozycyjnej VR (dane przykładowe, N = 24)
tab <- matrix(c(7, 4,
                2, 11), nrow = 2, byrow = TRUE,
              dimnames = list(grupa = c("terapia VR", "lista oczekujących"),
                              poprawa = c("tak", "nie")))
chisq.test(tab)$expected                  # liczebności oczekiwane
fisher.test(tab)                          # dokładne p, warunkowy OR i 95% CI
pr <- dhyper(0:9, m = 9, n = 15, k = 11)  # prawdopodobieństwa wszystkich tabel (a = 0, ..., 9)
sum(pr[pr < pr[8]]) + pr[8] / 2           # mid-p; pr[8] to tabela obserwowana (a = 7)
Wynik w R
                    poprawa
grupa                  tak   nie
  terapia VR         4.125 6.875
  lista oczekujących 4.875 8.125
Warning message:
In chisq.test(tab) : Chi-squared approximation may be incorrect

	Fisher's Exact Test for Count Data

data:  tab
p-value = 0.03274
alternative hypothesis: true odds ratio is not equal to 1
95 percent confidence interval:
   1.05525 119.93744
sample estimates:
odds ratio 
  8.592201 

[1] 0.02290012

Bibliografia oprogramowania

Wyniki pochodzą z uruchomienia pokazanego kodu w R 4.5.3 (funkcje pakietu stats). W pracy podaj wersję R, której użyłeś (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/

Najczęstsze pytania

Co to jest test dokładny Fishera?

To test związku dwóch zmiennych dychotomicznych w tabeli 2 × 2, który liczy wartość p dokładnie, z rozkładu hipergeometrycznego, zamiast przybliżać ją rozkładem χ². Stosuje się go zwłaszcza w małych próbach.

Czy test Fishera można stosować dla tabel większych niż 2 × 2?

Tak. Uogólnienie na tabele r × c to test Fishera–Freemana–Haltona; w R wystarczy fisher.test(tabela). Gdy tabela i próba są duże, obliczenia bywają ciężkie – wtedy użyj opcji simulate.p.value = TRUE.

Jak zapisać wynik testu Fishera w APA?

Test nie ma statystyki ani stopni swobody, więc podaj odsetki w grupach, dokładne p i iloraz szans z 95% CI, np. „test dokładny Fishera, p = .033, OR = 8.59, 95% CI [1.06, 119.94]”.

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. Campbell, I. (2007). Chi-squared and Fisher–Irwin tests of two-by-two tables with small sample recommendations. Statistics in Medicine, 26(19), 3661–3675. https://doi.org/10.1002/sim.2832
  2. Kim, H.-Y. (2017). Statistical notes for clinical researchers: Chi-squared test and Fisher's exact test. Restorative Dentistry & Endodontics, 42(2), 152–155. https://doi.org/10.5395/rde.2017.42.2.152 ● Otwarty dostęp
  3. Lydersen, S., Fagerland, M. W., & Laake, P. (2009). Recommended tests for association in 2 × 2 tables. Statistics in Medicine, 28(7), 1159–1175. https://doi.org/10.1002/sim.3531

Cytowania BibTeX

@article{campbell2007chisquared, author={Campbell, Ian}, title={{Chi-squared and Fisher–Irwin tests of two-by-two tables with small sample recommendations}}, journal={Statistics in Medicine}, year={2007}, volume={26}, number={19}, pages={3661--3675}, doi={10.1002/sim.2832}}
@article{kim2017chi, author={Kim, Hae-Young}, title={{Statistical notes for clinical researchers: Chi-squared test and Fisher's exact test}}, journal={Restorative Dentistry \& Endodontics}, year={2017}, volume={42}, number={2}, pages={152--155}, doi={10.5395/rde.2017.42.2.152}}
@article{lydersen2009recommended, author={Lydersen, Stian and Fagerland, Morten W. and Laake, Petter}, title={{Recommended tests for association in 2 × 2 tables}}, journal={Statistics in Medicine}, year={2009}, volume={28}, number={7}, pages={1159--1175}, doi={10.1002/sim.3531}}
R