Jak wykonać test u manna-whitneya w r


Test U Manna-Whitneya (czasami nazywany testem sumy rang Wilcoxona) służy do porównywania różnic między dwiema niezależnymi próbkami, gdy rozkłady próbek nie mają rozkładu normalnego , a liczebność próbek jest mała (n < 30).

Uważa się, że jest to nieparametryczny odpowiednik niezależnego testu t dla dwóch próbek .

W tym samouczku wyjaśniono, jak wykonać test U Manna-Whitneya w języku R.

Przykład: Test U Manna-Whitneya w R

Naukowcy chcą wiedzieć, czy nowy lek skutecznie zapobiega atakom paniki. Łącznie 12 pacjentów podzielono losowo na dwie grupy po 6 osób i przydzielono do grupy otrzymującej nowy lek lub placebo. Następnie pacjenci rejestrują liczbę ataków paniki, których doświadczyli w ciągu miesiąca.

Wyniki przedstawiono poniżej:

NOWY LEK PLACEBO
3 4
5 8
1 6
4 2
3 1
5 9

Wykonaj test U Manna-Whitneya, aby określić, czy istnieje różnica w liczbie ataków paniki wśród pacjentów w grupie placebo w porównaniu z grupą nowego leku. Użyj poziomu istotności 0,05.

Istnieją dwa różne sposoby przeprowadzenia testu U Manna-Whitneya, ale w obu metodach używana jest funkcja wilcox.test() i obie prowadzą do tego samego wyniku.

Opcja 1: Wprowadź dane jako dwa oddzielne wektory.

 #create a vector for each group
new <- c(3, 5, 1, 4, 3, 5)
placebo <- c(4, 8, 6, 2, 1, 9)

#perform the Mann Whitney U test
wilcox.test(new, placebo)

#output
Wilcoxon rank sum test with continuity correction

data: new and placebo
W = 13, p-value = 0.468
alternative hypothesis: true location shift is not equal to 0

Opcja 2: Wprowadź dane w ramce danych składającej się z dwóch kolumn. Jedna kolumna zawiera liczbę ataków paniki, a druga grupę.

 #create a data frame with two columns, one for each group
drug_data <- data.frame(attacks = c(3, 5, 1, 4, 3, 5, 4, 8, 6, 2, 1, 9),
                        drug_group = c(rep("old", 6), rep("placebo", 6)))

#perform the Mann Whitney U test
wilcox.test(attacks~drug_group, data = drug_data)

#output
data: attacks by drug_group
W = 13, p-value = 0.468
alternative hypothesis: true location shift is not equal to 0

Należy pamiętać, że obie metody prowadzą do dokładnie tego samego wyniku. Mianowicie, statystyka testowa wynosi W = 13, a odpowiadająca jej wartość p wynosi 0,468 .

Ponieważ wartość p jest większa niż 0,05, nie możemy odrzucić hipotezy zerowej.

Oznacza to, że nie mamy wystarczających dowodów, aby stwierdzić, że liczba ataków paniki doświadczanych przez pacjentów w grupie placebo różni się od liczby ataków paniki w grupie nowego leku.

Uwagi dotyczące korzystania z funkcji Wilcox.test()

Domyślnie funkcja wilcox.test() zakłada, że chcesz przeprowadzić dwustronny test hipotez. Możesz jednak określić alternatywny = „mniej” lub alternatywny = „więcej”, jeśli zamiast tego chcesz uruchomić test jednostronny.

Załóżmy na przykład, że chcemy przetestować hipotezę, że nowy lek powoduje mniej ataków paniki niż placebo. W tym przypadku moglibyśmy określić alternatywny=”mniej” w naszej funkcji wilcox.test():

 #create a vector for each group
new <- c(3, 5, 1, 4, 3, 5)
placebo <- c(4, 8, 6, 2, 1, 9)

#perform the Mann Whitney U test, specify alternative="less"
wilcox.test(new, placebo, alternative="less")

#output
	Wilcoxon rank sum test with continuity correction

data: new and placebo
W = 13, p-value = 0.234
alternative hypothesis: true location shift is less than 0

Należy zauważyć, że statystyka testowa nadal wynosi W = 13, ale wartość p wynosi teraz 0,234 , co stanowi dokładnie połowę poprzedniej wartości p dla testu dwustronnego.

Ponieważ wartość p jest zawsze większa niż 0,05, nadal nie uda nam się odrzucić hipotezy zerowej.

Nie mamy wystarczających dowodów, aby stwierdzić, że liczba ataków paniki doświadczanych przez pacjentów w grupie nowego leku była mniejsza niż u pacjentów w grupie placebo.

Dodatkowe zasoby

Przewodnik po teście U Manna-Whitneya
Kalkulator testu U Manna-Whitneya

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *