Uji Beda (Paired & Unpaired Sample t-Test) dengan R

Paired Sample t-Test

Artikel ini memberikan contoh analisis uji Beda data berpasangan bisanya digunakan untuk uji beda rata-rata dua data dari sumber yang sama dengan perlakuan/karakteristik yang berbeda pada masing-masing kelompok data, berikut ini adalah contoh data nilai math waktu SD dan SMA (sederajat) dari 22 orang mahasiswa, misal nama datanya adalah dataPaired.xlsx, kita lakukan import data terlebih dahulu ke RStudio.

tingkatnilaimath
mathSD8
mathSD7
mathSD7
mathSD9
mathSD7
mathSD9
mathSD9
mathSD5
mathSD5
mathSD8
mathSD5
mathSD5
mathSD8
mathSD9
mathSD5
mathSD8
mathSD7
mathSD7
mathSD9
mathSD4
mathSD10
mathSD3
mathSMA5
mathSMA6
mathSMA7
mathSMA9
mathSMA8
mathSMA8
mathSMA8
mathSMA5
mathSMA8
mathSMA7
mathSMA6
mathSMA6
mathSMA8
mathSMA8
mathSMA5
mathSMA3
mathSMA9
mathSMA7
mathSMA7
mathSMA6
mathSMA6
mathSMA7

Sebelum dilakukan t-test, kita akan menguji beberapa asumsi yang harus dipenuhi dari data kita, yaitu apakah data merupakan data berpasangan? apakah data besar atau kecil? jika kecil apakah selisih kedua kelompok data berdistribusi normal?

Asumsi #1 apakah data berpasangan, iya karena dua kelompok data berasal dari satu kelompok sumber yang sama.

Asumsi #2, karena data berjumlah sedikit, n<30 maka perlu dilakukan uji normalitas, kita lakukan dengan Shapiro-Wilk normality test, dengan perintah di bawah ini,

#compute the difference

> selisihnilai <- with(dataPaired,nilaimath[tingkat == "mathSD"] - nilaimath[tingkat == "mathSMA"])

#Shapiro-Wilk normality test for the differences

> shapiro.test(selisihnilai)

Shapiro-Wilk normality test
data: selisihnilai
W = 0.96213, p-value = 0.5335

Hasil di atas menunjukkan nilai p-value 0.5335 lebih besar dari significance level 0.05 yang artinya distribusi dari selisih kedua data berdistribusi normal, sehingga asumsi normalitas terpenuhi.

Langkah selanjutnya kita akan menguji hipotesis di bawah ini,

h0: tidak ada perbedaan signifikan rata-rata nilai di masa SD dengan masa SMA

ha: ada perbedaan signifikan rata-rata nilai di masa SD dengan masa SMA

Setelah data kita import ke RStudio, maka kita gunakan perintah di bawah ini untuk analisis uji beda rata-rata,

> ttestKita <- t.test(nilaimath ~ tingkat, data = dataPaired, paired = TRUE)
> ttestKita
       Paired t-test
 
data:  nilaimath by tingkat
t = 0.50422, df = 21, p-value = 0.6194
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
 -0.7100959  1.1646413
sample estimates:
mean of the differences 
               0.2272727 

Hasil pengujian di atas menunjukkan nilai p-value sebesar 0.6194, lebih besar dari significance level alpha = 0.05. sehingga dapat dinyatakan kita menerima null hypothesis (h0) dan menyimpulkan bahwa tidak ada perbedaan signifikan nilai math mahasiswa sewaktu SD dan SMA.

Unpaired Sample t-Test

Kita akan membahas Unpaired Sample t-Test dengan contoh di bawah ini, tabel dataWisatawan.xlsx adalah data wisatawan yang datang ke kotaA dan kotaB tahun selama 10 tahun seperti di bawah ini,

kotawisatawan
kotaA8322
kotaA11248
kotaA11365
kotaA12172
kotaA15384
kotaA14405
kotaA19029
kotaA17286
kotaA10080
kotaA17676
kotaB8000
kotaB6500
kotaB13889
kotaB13580
kotaB14200
kotaB16869
kotaB16870
kotaB15366
kotaB11674
kotaB16417

Seperti biasa setelah data di import ke RStudio, sebelum dilakukan unpaired sample t-test, kita akan menguji beberapa asumsi yang harus dipenuhi dari data kita, yaitu:

Asumsi #1, apakah data merupakan data yang tidak saling berpasangan? ya, karena data merupakan data kunjungan wisatawan di dua kota yang berbeda,

Asumsi #2, apakah kedua kelompok data berdistribusi normal? maka akan dilakukan uji normalitas dengan Shapiro-Wilk test, dengan perintah di bawah ini,

#Shapiro-Wilk normality test for kotaA
> with(dataWisatawan, shapiro.test(wisatawan[kota == "kotaA"]))

Shapiro-Wilk normality test
data: wisatawan[kota == "kotaA"]
W = 0.952, p-value = 0.6922

#Shapiro-Wilk normality test for kotaB
> with(dataWisatawan, shapiro.test(wisatawan[kota == "kotaB"]))

Shapiro-Wilk normality test
data: wisatawan[kota == "kotaB"]
W = 0.86963, p-value = 0.09898

Hasil pengujian di atas didapat kedua nilai p-values lebih besar dari significance level 0.05 yang menunjukkan distribusi data tidak berbeda dari normal distribution, dengan kata lain asumsi normalitas terpenuhi.

Asumsi #3, apakah varians kedua data adalah sama? akan dilakukan pengujian F-test untuk menguji homogeneity pada variances, dengan function var.test() seperti di bawah ini,

> variancetest <- var.test(wisatawan ~ kota, data = dataWisatawan)
> variancetest

F test to compare two variances
data: wisatawan by kota
F = 0.98779, num df = 9, denom df = 9, p-value = 0.9857
alternative hypothesis: true ratio of variances is not equal to 1
95 percent confidence interval:
0.2453523 3.9768252
sample estimates:
ratio of variances
0.9877871

Nilai p-value dari F-test adalah 0.9857, lebih besar dari significance level alpha = 0.05, menunjukkan tidak ada perbedaan signifikan antara variance kedua data, sehingga kita dapat lanjutkan ke tahap t-test dengan perintah di bawah ini,

> ttestKita <- t.test(wisatawan ~ kota, data = dataWisatawan, var.equal = TRUE)
> ttestKita

Two Sample t-test
data: wisatawan by kota
t = 0.22344, df = 18, p-value = 0.8257
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-3026.625 3747.025
sample estimates:
mean in group kotaA mean in group kotaB
13696.7 13336.5

Nilai p-value hasil pengujian sebesar 0.8257 yang lebih besar dari nilai significance level alpha = 0.05 menunjukkan bahwa tidak ada perbedaan signifikan kunjungan wisatawan antara keduanya kotaA dan kotaB.

Leave a Reply

Your email address will not be published. Required fields are marked *