Mann Whitney U Testi

Bir üniversitenin psikoloji bölümünde çalışan araştırmacılar, öğrencilerin yoğun akademik tempo nedeniyle stres düzeylerinin yükseldiğini fark etmiştir. Özellikle düzenli fiziksel egzersiz yapan öğrencilerin daha rahat göründüğü dikkat çekmiştir. Bunun üzerine araştırmacılar şu soruya yanıt aramıştır:

“Düzenli egzersiz yapan psikoloji öğrencilerinin algılanan stres düzeyleri, egzersiz yapmayan öğrencilerden farklı mıdır?”

Veriler normal dağılım varsayımını sağlamadığı için parametrik olmayan (nonparametrik) testlerden biri olan Mann–Whitney U testi kullanılmıştır.

Bağımsız değişken: Egzersiz durumu

Bağımlı değişken: Algılanan stres puanı

  1. Bu bölümde analiz sırasında kullanılacak paketler yüklenmektedir:
library(tidyverse)  
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.2.1     ✔ readr     2.2.0
## ✔ forcats   1.0.1     ✔ stringr   1.6.0
## ✔ ggplot2   4.0.3     ✔ tibble    3.3.1
## ✔ lubridate 1.9.5     ✔ tidyr     1.3.2
## ✔ purrr     1.2.2     
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(lsr)  # Mann-Whitney etki büyüklüğü için
library(broom) # test çıktısını tabloya çevirmek için kullandık
library(ggplot2) # görselleştirme için kullandık
  1. Bu bölümde egzersiz yapan ve yapmayan öğrencilerin stres puanları ayrı ayrı tanımlanmıştır:
egzersiz_yapan <- c(18, 20, 22, 19, 17, 21, 23, 20)
egzersiz_yapmayan <- c(25, 28, 30, 27, 26, 29, 31, 28)

# Veri çerçevesi oluşturalım
stres <- c(egzersiz_yapan, egzersiz_yapmayan)
grup <- factor(c(rep("Yapan", length(egzersiz_yapan)),
                  rep("Yapmayan", length(egzersiz_yapmayan))))

egzersiz_veri <- data.frame(grup, stres)

egzersiz_veri
##        grup stres
## 1     Yapan    18
## 2     Yapan    20
## 3     Yapan    22
## 4     Yapan    19
## 5     Yapan    17
## 6     Yapan    21
## 7     Yapan    23
## 8     Yapan    20
## 9  Yapmayan    25
## 10 Yapmayan    28
## 11 Yapmayan    30
## 12 Yapmayan    27
## 13 Yapmayan    26
## 14 Yapmayan    29
## 15 Yapmayan    31
## 16 Yapmayan    28

data.frame() → tüm değişkenleri tek veri setinde toplar.

Elde edilen veri setinde her öğrencinin hangi grupta olduğu ve stres puanı aynı tabloda bulunmaktadır.

  1. Mann-Whitney U testinin yapılması

Burada Mann–Whitney U testi uygulanmaktadır. (Bu test, bağımsız örneklem t-testinin parametrik olmayan alternatifidir).

wilcox.test() fonksiyonu iki bağımsız grubun ortanca (median) puanlarını karşılaştırır.

stres ~ grup ifadesi: bağımlı değişkenin stres, grup değişkeninin ise grup olduğunu belirtir.

sonuc_egzersiz <- wilcox.test(stres ~ grup, data = egzersiz_veri)
## Warning in wilcox.test.default(x = DATA[[1L]], y = DATA[[2L]], ...): cannot
## compute exact p-value with ties
sonuc_egzersiz
## 
##  Wilcoxon rank sum test with continuity correction
## 
## data:  stres by grup
## W = 0, p-value = 0.0009229
## alternative hypothesis: true location shift is not equal to 0

Testin sonucunu yukarıdaki kod satırından öğrenebileceğiniz gibi aşağıdaki kod yazımı da alternatif bir kullanımdır.

wilcox.test(egzersiz_yapan, egzersiz_yapmayan)
## Warning in wilcox.test.default(egzersiz_yapan, egzersiz_yapmayan): cannot
## compute exact p-value with ties
## 
##  Wilcoxon rank sum test with continuity correction
## 
## data:  egzersiz_yapan and egzersiz_yapmayan
## W = 0, p-value = 0.0009229
## alternative hypothesis: true location shift is not equal to 0
wilcox.test(stres ~ grup, data = egzersiz_veri) %>%
  tidy()
## Warning in wilcox.test.default(x = DATA[[1L]], y = DATA[[2L]], ...): cannot
## compute exact p-value with ties
## # A tibble: 1 × 4
##   statistic  p.value method                                          alternative
##       <dbl>    <dbl> <chr>                                           <chr>      
## 1         0 0.000923 Wilcoxon rank sum test with continuity correct… two.sided

tidy() fonksiyonu test çıktısını düzenli tablo biçimine dönüştürür. Böylece sonuçları raporlamak ve tabloya aktarmak kolaylaşır.

  1. Görselleştirme
 ggplot(egzersiz_veri, aes(x = grup, y = stres, fill = grup)) +
  geom_boxplot(alpha = 0.6) +
  geom_jitter(width = 0.1, alpha = 0.6) +
  labs(title = "Egzersiz Durumuna Göre Stres",
       x = "Grup",
       y = "Stres Puanı") +
  theme_minimal()

Analiz sonucunda düzenli egzersiz yapan ve yapmayan öğrencilerin algılanan stres düzeyleri arasında anlamlı bir fark bulunmuştur.

Mann–Whitney U testi sonucu:

W=0, p<.001

Buna göre düzenli egzersiz yapmayan öğrencilerin stres düzeyleri, egzersiz yapan öğrencilere göre daha yüksektir.

  1. Raporlama

Düzenli egzersiz yapan ve yapmayan öğrencilerin algılanan stres düzeyleri arasında anlamlı bir fark olup olmadığını incelemek amacıyla Mann–Whitney U testi uygulanmıştır. Analiz sonucunda gruplar arasında anlamlı farklılık bulunmuştur, W=0,p<.001. Bulgular, düzenli egzersiz yapmayan öğrencilerin daha yüksek stres düzeyine sahip olduğunu göstermektedir.