Dari tema di atas adalah melihat seberapa besar perbedaan data. Nah loh.. Seberapa besar perbedaan data artinya apakah data A dan B berbeda??
Bah kalau untuk melihat apakah ada perbedaan antara A dan B bukannya bisa dengan menggunakan uji T ?? Kenapa harus nguji Cohen’s d dan Wilcoxon’s V ??
Ada yang mikir sama nggak ?
Oke jadi gini mbak/mba..
Jadi Uji T dan Uji Cohen’s D, adalah uji yang berbeda. Bedanya di mana?
Uji t: Memberikan informasi apakah perbedaan antara kelompok-kelompok tersebut signifikan secara statistik.
Cohen's d: Memberikan informasi tambahan tentang ukuran seberapa besar perbedaan tersebut, membantu dalam menginterpretasikan signifikansi praktis atau klinis.
Gimana udah kebayang?
Jadi Uji T ini hanya menjawab berbeda atau nggak, sedangkan Cohen’s D memberikan informasi gambaran seberapa besar perbedaan tersebut.
Lalu apa bedanya Cohen’s d dan wilcoxon’s V ?
Sama seperti Uji T dan Man Withney, yang melihat apakah bagian dari stats Parametrik dan non parametrik. Masih ingatkan, apa itu Parametrik dan Non parametrik.
Parametrik = data berdistribusi Normal.
Nonparametrik = data tidak berdistribusi Normal.
Kesimpulannya adalah sebelum melakukan Ujicohen’s d, sebaiknya melakukan uji T terlebih dahulu. Kenapa? Agar kita bisa melihat apakah ada perbedaan atau tidaknya dahulu. Bayangkan kalau kita mau melakukan uji seberapa besar data itu berbeda kalau data itu apakah ada perbedaaan atau tidaknya saja kita tidak mengetahuinya.
Cohen’s d mengkarakterisasi ukuran efek dengan menghubungkan perbedaan rata-rata dengan variabilitas, Cohen’s d adalah ukuran efek standar untuk mengukur perbedaan antara dua rata-rata kelompok. Seringkali, Anda akan menggunakannya saat membandingkan pengobatan dengan kelompok kontrol. Ini bisa menjadi ukuran efek yang cocok untuk disertakan dengan hasil uji-t dan ANOVA.
Untuk uji ini di lakukan untuk data yang berdistribusi Normal ya..
Uji ini sama juga dengan Cohen’s d, yaitu ukuran efek data. Bedanya adalah di gunakan ketika data tidak berdistribusi normal.
Hal pertama yang harus kita lakukan adalah niat, jiah kwkwkkw nggak deng, pertama adalah pemanasan dulu,, eh gmn gmn,, di kira mau marathon. jadi :
library(effectsize)
library(readr)
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.3 ✔ purrr 1.0.2
## ✔ forcats 1.0.0 ✔ stringr 1.5.0
## ✔ ggplot2 3.4.4 ✔ tibble 3.2.1
## ✔ lubridate 1.9.3 ✔ tidyr 1.3.0
## ── 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(dplyr)
Data set yang akan kita guanakn adalah data gaji yang di dummy.
Sallary_dataset = read.csv("D:/R/1 DATA SET/Salary_dataset.csv", header = T, sep = ",")
str(Sallary_dataset)
## 'data.frame': 30 obs. of 4 variables:
## $ YearsExperience : num 1.2 1.4 1.6 2.1 2.3 3 3.1 3.3 3.3 3.8 ...
## $ YearsExperience2: num 2.2 2.4 2.6 3.1 3.3 4 4.1 4.3 4.3 4.8 ...
## $ Salary : int 39344 46206 37732 43526 39892 56643 60151 54446 64446 57190 ...
## $ Salary2 : num 47213 64688 60371 91405 91752 ...
Data set di atas sudah oke sisa kita coba cek Distribusi datanya, masih ingatkan ?
Karena data terdiri dari 30 baris artinya n < 50 maka
uji yang di gunakan adalah Shapiro-Wilk test. bukan
Kolmogorov karena daanya < 30.
tes_a = shapiro.test(Sallary_dataset$YearsExperience)
tes_b = shapiro.test(Sallary_dataset$YearsExperience2)
hasil = data.frame(
Jenis_data = c('A', 'B'),
p_value = c(tes_a$p.value, tes_b$p.value)
) %>%
mutate( Hipotesis = ifelse(p_value < 0.05, 'Tolak H0','Terima H0'),
Kesimpulan = ifelse(p_value < 0.05, 'Data tidak Berdistribusi normal', ' Berdistribusi Normal')
)
print(hasil)
## Jenis_data p_value Hipotesis Kesimpulan
## 1 A 0.1033765 Terima H0 Berdistribusi Normal
## 2 B 0.1033765 Terima H0 Berdistribusi Normal
Oke Data sudah normal, sekarang kita cek apakah ada perbedaan yang signifikan dari data di atas?
Uji_perbedaan = t.test(Sallary_dataset$YearsExperience, Sallary_dataset$YearsExperience2, paired = FALSE)
perbedaan = ifelse(Uji_perbedaan$p.value < 0.05, 'Tidak ada perbedaan', 'Ada perbedaan')
hasil2 = data.frame(uji = 'Apakah ada perbedaan ?',
p_value = Uji_perbedaan$p.value,
Kesimpulan = perbedaan
)
print(hasil2)
## uji p_value Kesimpulan
## 1 Apakah ada perbedaan ? 0.1776057 Ada perbedaan
data kita sudah di uji bahwa ada perbedaa, sekarang masalahnya adalah seberapa jauh data perbedannya?
Kita menggunaakn Cohens D untuk melakukan uji seberapa
besar efek perubahan data? sebap data berdistribusi normal. sesuai
penjelasan di awal ketika parametrik (Berdistribusi normal) maka
mengguanakkn Cohens D
Result_Cohen = cohens_d(Sallary_dataset$YearsExperience, Sallary_dataset$YearsExperience2)
print(Result_Cohen)
## Cohen's d | 95% CI
## -------------------------
## -0.35 | [-0.86, 0.16]
##
## - Estimated using pooled SD.
Dalam hasil Cohen’s d :
Nilai Cohen's d adalah -0.35.
Interval kepercayaan 95% untuk Cohen's d adalah [-0.86, 0.16].
Estimasi ini dilakukan dengan menggunakan deviasi standar (SD) yang digabungkan (pooled SD).
Interpretasi:
Nilai Cohen's d:
Nilai Cohen's d adalah -0.35. Ini menunjukkan bahwa efeknya kecil, dan arah efek negatif menunjukkan bahwa kelompok pertama cenderung memiliki nilai yang lebih rendah daripada kelompok kedua.
Interval Kepercayaan (CI):
Interval kepercayaan 95% untuk Cohen's d adalah [-0.86, 0.16]. Ini menyatakan bahwa kita 95% yakin bahwa nilai sebenarnya dari Cohen's d berada dalam rentang ini. Jika rentang ini mencakup nilai 0, kita dapat menyimpulkan bahwa efeknya mungkin tidak signifikan secara statistik.
Penggunaan Pooled SD:
Pooled SD digunakan untuk mengestimasi variabilitas di seluruh kelompok. Ini adalah pendekatan umum, terutama ketika diasumsikan bahwa variabilitas di kedua kelompok relatif sama.
Kesimpulannya, meskipun nilai Cohen’s d adalah negatif, rentang interval kepercayaan mencakup nilai 0, yang menunjukkan bahwa efeknya mungkin tidak signifikan secara statistik. Perlu diingat bahwa interpretasi nilai Cohen’s d juga bergantung pada konteks spesifik eksperimen atau studi.
Mari kita berandai andai, jika data adalah uji nonparametrik (data
tidak berdistribusi normal) maka kita akan menngunakan uji
Wilcoxon's V. maka :
Wilcoxons_V = wilcox.test(Sallary_dataset$YearsExperience, Sallary_dataset$YearsExperience2, paired = T)
## Warning in wilcox.test.default(Sallary_dataset$YearsExperience,
## Sallary_dataset$YearsExperience2, : cannot compute exact p-value with ties
Warning “cannot compute exact p-value with ties” muncul ketika terdapat pengamatan yang memiliki nilai yang sama (ties) dalam kelompok data yang Anda gunakan untuk uji Wilcoxon signed-rank. Uji Wilcoxon memerlukan peringkat data, dan jika terdapat nilai yang sama, peringkat mungkin tidak unik dan menyebabkan kesulitan dalam menghitung nilai p secara eksak.
# Melakukan Wilcoxon signed-rank test dengan aproksimasi p-value
wilcox_test_result <- wilcox.test(Sallary_dataset$YearsExperience, Sallary_dataset$YearsExperience2, paired = TRUE, exact = FALSE)
wilcox_test_result
##
## Wilcoxon signed rank test with continuity correction
##
## data: Sallary_dataset$YearsExperience and Sallary_dataset$YearsExperience2
## V = 0, p-value = 1.537e-07
## alternative hypothesis: true location shift is not equal to 0
Hasil uji Wilcoxon signed-rank test dengan koreksi kontinuitas yang Anda berikan adalah sebagai berikut:
Statistik Uji Wilcoxon (V): 0
Nilai p (p-value): 1.537e-07 (sebuah nilai yang sangat kecil)
Hipotesis alternatif: Pergeseran lokasi sebenarnya tidak sama dengan 0
Interpretasi hasil:
Statistik Uji Wilcoxon (V):
Statistik Uji Wilcoxon (V) adalah 0. Ini adalah nilai peringkat yang dihitung dari seluruh pasangan data. Dalam konteks Wilcoxon signed-rank test, nilai V mencerminkan sejauh mana data telah bergeser dari nol.
Nilai p (P-value):
Nilai p sangat kecil (1.537e-07), jauh di bawah tingkat signifikansi umum (0.05). Hal ini menunjukkan bahwa terdapat bukti statistik yang sangat kuat untuk menolak hipotesis nol. Dengan kata lain, ada perbedaan yang signifikan antara dua kelompok.
Hipotesis Alternatif:
Hipotesis alternatif menyatakan bahwa pergeseran lokasi sebenarnya tidak sama dengan 0. Hasil p-value yang sangat kecil mendukung hipotesis alternatif ini.
Dengan nilai p yang sangat kecil, Anda dapat menyimpulkan bahwa ada perbedaan signifikan antara kelompok YearsExperience dan YearsExperience2. Hipotesis nol yang menyatakan tidak ada pergeseran lokasi signifikan ditolak. Hal ini dapat diartikan sebagai adanya perubahan yang signifikan antara dua kondisi atau waktu yang diukur oleh variabel YearsExperience.