Membangun fungsi segmentasi A/B test
Pada pelajaran sebelumnya, Anda melihat bahwa eksperimen personalisasi Anda sangat signifikan secara statistik. Namun, saat menjalankan eksperimen, penting untuk memeriksa bagaimana fitur baru memengaruhi demografi tertentu. Terkadang, fitur yang sangat menarik bagi satu kelompok kurang menarik bagi kelompok lain.
Karena Anda ingin melakukan segmentasi data beberapa kali, Anda akan membangun fungsi ab_segmentation() yang menganalisis dampak A/B test pada segmen data dan dapat digunakan kembali setiap kali Anda ingin melakukan analisis seperti ini.
Fungsi Anda akan menerima sebuah nama kolom dan menjalankan perhitungan untuk setiap nilai unik dalam kolom tersebut guna menghitung lift dan signifikansi statistik.
Latihan ini adalah bagian dari kursus
Menganalisis Kampanye Pemasaran dengan pandas
Petunjuk latihan
- Bangun sebuah for loop di dalam fungsi
ab_segmentation()kita yang menjalankan iterasi pada setiap nilai unik dalam nama kolom yang dimasukkan penggunasegment. - Isolasi baris-baris dalam marketing di mana saluran pemasaran bernilai
'Email'dan kolom masukan penggunasegmentsama dengansubsegment. - Cetak hasil dari fungsi
lift()danstats.ttest_ind().
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
def ab_segmentation(segment):
# Build a for loop for each subsegment in marketing
for subsegment in ____:
print(subsegment)
# Limit marketing to email and subsegment
email = marketing[(marketing['marketing_channel'] == ____) & (marketing[segment] == ____)]
subscribers = email.groupby(['user_id', 'variant'])['converted'].max()
subscribers = pd.DataFrame(subscribers.unstack(level=1))
control = subscribers['control'].dropna()
personalization = subscribers['personalization'].dropna()
print('lift:', ____)
print('t-statistic:', ____, '\n\n')