Bu yazıda R Programlama dili ile, parametrik olmayan bağımsız ve k örnekleme sahip veriler için kullanılan Bağımsız k Örneklem Konum Testlerini göreceğiz.

Veri

Analiz boyunca kullanılan veri, Almanya 2005 seçimlerine aittir. Bu veride 4 parti için 16 eyaletteki aldıkları oy sayıları verilmiştir.

Veriye buradan ulaşabilirsiniz: Veri

veri <-read.csv("https://raw.githubusercontent.com/gungorrbaris/TR-nonparametric.statistics-R/main/data/data.csv",sep = ";")
knitr::kable(head(veri,n=10), align = "c")
Eyalet Parti Oy
Schleswig-Holstein SPD 761302
Mecklenburg-Vorpommern SPD 326130
Hamburg SPD 447335
Niedersachsen SPD 2249746
Bremen SPD 184817
Brandenburg SPD 608044
Sachsen-Anhalt SPD 508573
Berlin SPD 681591
Nordrhein-Westfalen SPD 4658692
Sachsen SPD 666709

Normallik testleri

Parametrik olmayan testlerin uygulanabilmesi için verilerimizin normal dağılmaması gerekir.

4 parti yani 4 farklı grup olduğu için her grup için farklı normallik testlerinin yapılması gerekmektedir.

4 partiyi oylarını ayrı ayrı tanımlayalım:

spd <- veri$Oy[c(1:16)] 
cdu <- veri$Oy[c(17:32)] 
gruene <- veri$Oy[c(33:48)] 
fdp<- veri $Oy[c(49:64)]

SPD

Ho: SPD partisi ile normal dağılım arasında fark yoktur.
H1: SPD partisi ile normal dağılım arasında fark vardır.

shapiro.test(spd)
## 
##  Shapiro-Wilk normality test
## 
## data:  spd
## W = 0.74416, p-value = 0.0005408

SPD partisi için,

  • p değeri= 0.0005408 < α=0.05 olduğu için Ho RED. Yani SPD partisi normal dağılım göstermiyor.

CDU

Ho: CDU partisi ile normal dağılım arasında fark yoktur.
H1: CDU partisi ile normal dağılım arasında fark vardır.

shapiro.test(cdu)
## 
##  Shapiro-Wilk normality test
## 
## data:  cdu
## W = 0.7686, p-value = 0.001074

CDU partisi için,

  • p değeri= 0.001074 < α=0.05 olduğu için Ho RED. Yani SPD partisi normal dağılım göstermiyor.

Gruene

Ho: Gruene partisi ile normal dağılım arasında fark yoktur.
H1: Gruene partisi ile normal dağılım arasında fark vardır.

shapiro.test(gruene)
## 
##  Shapiro-Wilk normality test
## 
## data:  gruene
## W = 0.78781, p-value = 0.001885

Gruene partisi için,

  • p değeri= 0.001885 < α=0.05 olduğu için Ho RED. Yani SPD partisi normal dağılım göstermiyor.

FDP

Ho: FDP partisi ile normal dağılım arasında fark yoktur.
H1: FDP partisi ile normal dağılım arasında fark vardır.

shapiro.test(fdp)
## 
##  Shapiro-Wilk normality test
## 
## data:  fdp
## W = 0.8332, p-value = 0.007786

FDP partisi için,

  • p değeri= 0.007786 < α=0.05 olduğu için Ho RED. Yani SPD partisi normal dağılım göstermiyor.

Dört grubun da normal dağılım göstermediğini gördük. Normal olmayan veriler için parametrik olmayan testlerin kullanılması gerekir.

Bağımsız k Örneklem Konum Testi–Gruplar Arasındaki Farkın Test Edilmesi

Bu analizde bir parti oyu ile diğer iki parti oylarının farkına bakmamız gerekiyor. Farklılık çıkması durumunda farklılığı yaratan grubu araştırabiliriz.

Tüm grupların konum yönünden farkını anlamak için Kruskal-Wallis k Örneklem Konum testini kullanabiliriz.

Kruskal-Wallis Testi

𝐻o: Partilerin oy oranları arasında fark yoktur 𝐻1: En az bir partinin oyları diğerlerinden farklıdır.

kruskal.test(veri$Oy~veri$Parti,data=veri)
## 
##  Kruskal-Wallis rank sum test
## 
## data:  veri$Oy by veri$Parti
## Kruskal-Wallis chi-squared = 35.862, df = 3, p-value = 8.008e-08

Kruskal-Wallis Testi sonucuna bakıldığında:

  • p değeri=0.00 < α=0.05 olduğu için Ho RED.

  • chi-squared değerimiz =35,862 > 𝜒3,0.5=7,85 olduğu için Ho RED. Yani en az bir grubun diğerlerinden farklı olduğunu söyleyebiliriz.

Post-Hoc Testi – Farklılığa Neden olan Grubun Bulunması

Farklı olan grubu bulmamız için Post Hoc testlerini kullanabiliriz. Bu araştırma için, Kruskal için Post Hoc testi seçilmiştir.

library(PMCMRplus)
## Warning: package 'PMCMRplus' was built under R version 4.2.2
kwAllPairsNemenyiTest(veri$Oy ~ as.factor(veri$Parti), data = veri)
## 
##  Pairwise comparisons using Tukey-Kramer-Nemenyi all-pairs test with Tukey-Dist approximation
## data: veri$Oy by as.factor(veri$Parti)
##        CDU/CSU FDP     Gruene 
## FDP    0.00017 -       -      
## Gruene 0.00078 0.98393 -      
## SPD    0.97213 2.3e-05 0.00012
## 
## P value adjustment method: single-step
## alternative hypothesis: two.sided

Post Hoc testinin sonucuna göre α=0.05 anlamlılık değerinden küçük olan değerler arasında fark vardır. Buna göre:

  • SPD ve Gruene partileri arasındaki oran, p= 0.000012 < α=0.05 olduğu için iki parti oyları arasında fark vardır.

  • FDP ve CDU partileri arasındaki oran, p= 0.00017 < α=0.05 olduğu için iki parti arasında oyları fark vardır.

  • Gruene ve CDU partileri arasındaki oran, p= 0.00078 < α=0.05 olduğu için iki parti arasında oyları fark vardır.

  • SPD ve FDP partileri arasındaki oran, p= 0.0 < α=0.05 olduğu için iki parti arasında oyları fark vardır.

  • SPD ve CDU partileri arasındaki oran, p= 0.97 > α=0.05 olduğu için iki parti arasında oyları fark yoktur.

  • FDP ve Gruene partileri arasındaki oran, p= 0.98 > α=0.05 olduğu için iki parti arasında oyları fark yoktur.