การปรับแก้ค่า p-value
สมมติว่าคุณเป็น Data Scientist ที่ทำงานให้กับบริษัทสมาชิก ทีมออกแบบเว็บกำลังค้นหาปุ่ม CTA (call-to-action) ที่เหมาะสมที่สุดเพื่อกระตุ้นให้ผู้เยี่ยมชมหน้าเว็บสมัครใช้บริการ พวกเขานำเสนอดีไซน์ใหม่ 4 แบบนอกเหนือจากเวอร์ชันปัจจุบัน
หลังจากรันการทดลองเปรียบเทียบแต่ละ variant กับ control แล้ว คุณได้รายการค่า p-value ที่โหลดไว้ในตัวแปร pvals การนำค่าเหล่านี้ไปเปรียบเทียบกับค่า significance threshold โดยตรงจะทำให้อัตราความผิดพลาด Type I สูงเกินจริง เพื่อป้องกันปัญหานี้ ให้ใช้ฟังก์ชัน smt.multipletests() จากไลบรารี statsmodels ของ Python เพื่อปรับแก้ค่า p-value และทดสอบนัยสำคัญทางสถิติโดยกำหนด FWER = 5%
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
A/B Testing ด้วย Python
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
import statsmodels.stats.multitest as smt
pvals = [0.0126, 0.0005, 0.00007, 0.009]
# Perform a Bonferroni correction and print the output
corrected = smt.____(pvals, alpha = ____, method = '____')
print('Significant Test:', corrected[0])
print('Corrected P-values:', corrected[1])
print('Bonferroni Corrected alpha: {:.4f}'.format(corrected[3]))