TL;DR
Effect size adalah ukuran seberapa besar beda atau hubungan yang kamu temukan, terlepas dari jumlah sampel. P-value cuma jawab ada beda atau nggak, dan dia gampang jadi kecil kalau sampelmu besar. Buat beda dua rata-rata, ukuran yang paling umum adalah Cohen's d, yaitu selisih rata-rata dibagi simpangan baku gabungan, dengan patokan kasar 0,2 kecil, 0,5 sedang, dan 0,8 besar.
Effect size adalah ukuran seberapa besar beda atau hubungan yang kamu temukan, dihitung terlepas dari jumlah sampel.
Dengan 6.000 orang per kelompok, selisih belanja Rp700 bisa keluar signifikan. Angka Rp700 itu nggak ngubah apa pun buat tokomu.
Aku bakal tunjukin cara ngitung effect size, patokan besarannya, dan cara nerjemahin ke rupiah biar keputusanmu berdasar.
Effect size adalah angka yang nunjukin sebesar apa beda antar kelompok atau sekuat apa hubungan antar variabel. Dia dihitung dalam satuan yang nggak ikut membesar waktu sampelmu nambah. Itu bedanya sama p-value, yang makin kecil begitu datamu makin banyak walau bedanya tetap tipis.
Bentuknya macam-macam tergantung jenis data. Yang paling sering dipakai buat beda dua rata-rata adalah Cohen's d.
Sebelum lanjut, pastiin kamu udah paham arti p-value, soalnya inti artikel ini adalah kenapa angka itu nggak cukup sendirian.
Karena p-value nyampur dua hal: sebesar apa bedanya, dan sebanyak apa datamu. Selisih yang sama persis bisa ngeluarin p-value 0,4 di sampel 200 orang, dan p-value 0,001 di sampel 50.000 orang.
Jadi p-value kecil cuma bilang bedanya kemungkinan bukan kebetulan. Dia nggak bilang bedanya cukup gede buat diurus.
Ini kenapa perusahaan dengan data besar gampang kejebak. Hampir semua uji keluar signifikan, dan tim jadi ngejar perubahan yang dampaknya nggak kerasa di laporan keuangan.
Buat beda dua rata-rata, rumusnya selisih rata-rata dibagi simpangan baku gabungan. Hasilnya angka tanpa satuan, jadi bisa dibandingin antar metrik yang skalanya beda.
Cohen's d = (rata-rata A - rata-rata B) / simpangan baku gabungan
Contoh: rata-rata belanja kelompok A Rp53.100, kelompok B Rp52.400, simpangan baku dua-duanya sekitar Rp18.000.
d = (53100 - 52400) / 18000 = 700 / 18000 = 0,039
Nilai 0,039 itu mungil banget. Kalau kamu belum kenal simpangan baku, baca dulu standar deviasi, karena itu penyebut yang nentuin hasilnya.
Patokan kasar dari Jacob Cohen (1988):
| Cohen's d | Sebutan | Artinya kira-kira |
|---|---|---|
| 0,2 | Kecil | Cuma ketahuan lewat hitungan, nggak kelihatan mata |
| 0,5 | Sedang | Kelihatan kalau kamu perhatiin |
| 0,8 | Besar | Kelihatan tanpa dihitung |
Di Python, uji beda dan ukuran efeknya bisa jalan berbarengan:
from scipy import stats
import numpy as np
t, p = stats.ttest_ind(a, b)
sd_gabungan = np.sqrt((a.var(ddof=1) + b.var(ddof=1)) / 2)
d = (a.mean() - b.mean()) / sd_gabungan
print(round(p, 4), round(d, 3))
Parameter lengkap ujinya ada di dokumentasi scipy ttest_ind. Cetak dua angka itu bareng, jangan p-value doang.
Salah pilih ukuran bikin angkanya nggak nyambung sama pertanyaanmu. Ini panduan singkatnya.
| Bentuk data | Ukuran efek | Cara baca cepat |
|---|---|---|
| Beda dua rata-rata | Cohen's d | 0,2 kecil, 0,5 sedang, 0,8 besar |
| Beda dua persentase | Selisih poin persen dan rasio | Laporin dua-duanya sekaligus |
| Hubungan dua variabel angka | Koefisien korelasi r | 0,1 lemah, 0,3 sedang, 0,5 kuat |
| Tabel silang dua kategori | Cramer's V | Nilainya 0 sampai 1, makin besar makin nempel |
| Lebih dari dua kelompok | Eta kuadrat | Porsi keragaman yang dijelasin kelompok |
Buat data persentase, aku lebih suka nulis dua-duanya. Naik dari 4 persen ke 6 persen itu selisih 2 poin persen, sekaligus kenaikan setengah kali lipat. Dua kalimat itu ngasih gambaran yang beda ke pembaca laporanmu.
Toko_berkah nguji notifikasi WhatsApp berisi pengingat belanja mingguan. Sebanyak 6.000 pelanggan dapat notifikasi, 6.000 lagi nggak. Yang diukur rata-rata nilai belanja selama 4 minggu.
| Kelompok | Jumlah | Rata-rata belanja | Simpangan baku |
|---|---|---|---|
| Dapat notifikasi | 6.000 | Rp53.100 | Rp18.000 |
| Nggak dapat | 6.000 | Rp52.400 | Rp18.000 |
Hasil ujinya: selisih Rp700 dengan p-value sekitar 0,033. Lolos ambang 0,05, dan tim marketing hampir ngirim laporan berjudul notifikasi terbukti naikin belanja.
Effect size-nya 0,039. Jauh di bawah patokan kecil yang 0,2.
Sekarang terjemahin ke rupiah. Selisih Rp700 dikali 6.000 pelanggan sama dengan Rp4,2 juta tambahan belanja dalam 4 minggu. Marginnya sekitar 12 persen, jadi tambahan untungnya sekitar Rp504.000.
Biaya kirim notifikasi ke 6.000 nomor plus waktu tim nyusun pesan: Rp1,8 juta. Program ini rugi Rp1,3 juta, walau hasilnya signifikan secara statistik.
Keputusan yang diambil: hentiin pengiriman ke semua pelanggan, dan uji ulang khusus ke 18 SKU paling laris dengan pesan yang lebih spesifik. Uji kedua ngasih selisih Rp3.900 per orang dengan d 0,21, dan itu baru layak dijalanin.
Patokan Cohen cuma titik awal. Yang nentuin sebenernya perbandingan antara nilai efek dan biaya buat dapetinnya.
Tiga pertanyaan yang aku pakai sebelum nyatain satu temuan layak:
Kebiasaan yang bikin beda: tentuin efek minimum yang layak sebelum uji dimulai. Kalau kamu udah bilang di awal bahwa kenaikan di bawah Rp2.000 per orang nggak bakal ditindaklanjuti, hasil Rp700 nggak bakal bikin rapat panjang. Ini bagian dari desain A/B testing yang sering dilewat.
1. Ngelaporin p-value doang. Tanpa ukuran efek, pembaca laporanmu nggak bisa nilai temuannya layak dikerjain atau nggak.
2. Nempelin patokan Cohen mentah-mentah. Efek 0,1 bisa untung besar kalau biayanya murah dan pelanggannya jutaan.
3. Ngitung d dari sampel super kecil. Dengan 15 orang per kelompok, nilai d-nya goyang banget. Laporin rentang ketidakpastiannya.
4. Nganggap effect size besar berarti sebab akibat. Efeknya bisa gede tapi datang dari faktor lain. Desain pengujian yang nentuin, bukan besaran angkanya.
5. Bandingin d antar metrik yang skalanya beda tanpa mikir. Cohen's d emang bisa dibandingin, tapi cuma kalau simpangan bakunya masuk akal buat dua-duanya.
Effect size adalah ukuran seberapa besar beda atau hubungan yang kamu temukan, dihitung terlepas dari jumlah sampel. Penting karena p-value cuma jawab ada beda atau nggak, bukan sebesar apa. Dengan sampel puluhan ribu, selisih yang nggak ada artinya buat bisnis bisa keluar signifikan. Effect size yang ngasih kamu dasar buat mutusin temuan itu layak ditindaklanjuti atau nggak.
Ambil selisih rata-rata dua kelompok, lalu bagi sama simpangan baku gabungan dua kelompok itu. Kalau kelompok A rata-rata 53.100 dan kelompok B 52.400 dengan simpangan baku 18.000, hasilnya 700 dibagi 18.000 sama dengan 0,039. Angka itu jauh di bawah 0,2, jadi bedanya kecil banget walau uji statistiknya bilang signifikan.
Patokan kasar dari Jacob Cohen: 0,2 kecil, 0,5 sedang, dan 0,8 besar buat Cohen's d. Tapi ini cuma titik awal, bukan hukum. Di kampanye pemasaran, efek 0,1 bisa untung besar kalau biayanya murah dan pelanggannya jutaan. Di keputusan medis, efek 0,5 bisa dianggap kurang. Ukur pakai dampak rupiah dan biaya, bukan cuma tabel patokan.
Artinya kamu yakin bedanya nyata, tapi bedanya tipis. Ini pola yang khas muncul di sampel besar. Yang perlu kamu lakukan berikutnya bukan ngerayain hasilnya, tapi ngitung nilai rupiahnya. Kalikan selisih per orang sama jumlah orang yang kena, lalu bandingin sama biaya program. Kalau hasilnya minus, temuan itu nyata tapi nggak layak dijalanin.
Buat dua persentase, paling gampang laporin selisih poin persennya langsung plus rasio antar keduanya. Selisih 2 poin persen dari 4 persen ke 6 persen itu kenaikan setengah kali lipat, dan dua cara baca itu ngasih gambaran berbeda. Kalau kamu butuh angka yang bisa dibandingin antar penelitian, pakai Cohen's h yang khusus buat proporsi.
Yang perlu nempel: p-value jawab ada beda atau nggak, effect size jawab sebesar apa bedanya. Laporan yang cuma punya satu dari dua itu bikin orang salah ambil keputusan.
Di analisis berikutnya, tambahin satu baris di outputmu buat ukuran efek, lalu terjemahin ke rupiah sebelum dikirim.
Lanjut baca uji hipotesis buat dasar pengujiannya, atau glossary metric buat milih metrik yang efeknya beneran kerasa di bisnis.
Mau praktek langsung? Mulai latihan SQL gratis
Latihan interaktif, langsung di browser.
Kolom datetime nyimpen tanggal, jam, hari, semuanya nempel jadi satu. Accessor .dt di pandas ngeluarin tiap bagian jadi kolom sendiri buat dianalisa.
Nama toko ketik campur huruf besar-kecil, spasi nyasar di ujung, atau kode produk nempel jadi satu. Accessor .str di pandas ngerapiin semua itu tanpa loop.
Model machine learning cuma ngerti angka, bukan teks kayak merah atau biru. get_dummies ngubah kolom kategori jadi kolom 0/1 dalam satu baris kode.