Analisis Daya - Bagian II
Sebelumnya, kita menyimulasikan satu kali percobaan dan menghasilkan sebuah p-value. Sekarang kita akan menggunakan kerangka ini untuk menghitung daya statistik (power). Daya suatu percobaan adalah kemampuan percobaan tersebut untuk mendeteksi perbedaan antara perlakuan dan kontrol jika perbedaan itu benar-benar ada. Sebagai praktik statistik yang baik, usahakan mencapai daya 80%.
Untuk situs web kita, misalkan kita ingin mengetahui berapa banyak orang yang perlu mengunjungi setiap varian agar kita dapat mendeteksi peningkatan waktu yang dihabiskan sebesar 10% dengan daya 80%. Untuk itu, kita mulai dengan sampel kecil (50), mensimulasikan beberapa kali percobaan ini dan memeriksa dayanya. Jika daya 80% tercapai, kita berhenti. Jika belum, kita menambah ukuran sampel dan mencoba lagi.
Latihan ini adalah bagian dari kursus
Simulasi Statistik di Python
Petunjuk latihan
- Untuk variabel acak
time_spent, tetapkansizesebagai tuple sehingga bentuknya adalahsample_size\(\times\)sims. - Hitung
powersebagai fraksi p-value yang kurang dari 0,05 (signifikan secara statistik). - Jika
powerlebih besar atau sama dengan 80%, lakukanbreakdari while loop. Jika tidak, terus tingkatkansample_sizesebanyak 10.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
sample_size = 50
# Keep incrementing sample size by 10 till we reach required power
while 1:
control_time_spent = np.random.normal(loc=control_mean, scale=control_sd, size=(____,____)))
treatment_time_spent = np.random.normal(loc=control_mean*(1+effect_size), scale=control_sd, size=(____,____))
t, p = st.ttest_ind(treatment_time_spent, control_time_spent)
# Power is the fraction of times in the simulation when the p-value was less than 0.05
power = (p < 0.05).sum()/____
if ____:
____
else:
____ += ____
print("For 80% power, sample size required = {}".format(sample_size))