การแบ่งกลุ่มลูกค้าด้วย Python
Karolis Urbonas
Head of Data Science, Amazon
การแบ่งกลุ่มลูกค้าตามพฤติกรรม โดยใช้ 3 ตัวชี้วัด:
ค่า RFM สามารถจัดกลุ่มได้หลายวิธี:
เราจะใช้วิธีจัดกลุ่มแบบเปอร์เซ็นไทล์
ขั้นตอนการคำนวณเปอร์เซ็นไทล์:
ข้อมูลที่มี CustomerID 8 รายการ และค่า Spend ที่คำนวณแบบสุ่ม
spend_quartiles = pd.qcut(data['Spend'], q=4, labels=range(1,5))data['Spend_Quartile'] = spend_quartilesdata.sort_values('Spend')
# Create numbered labels r_labels = list(range(4, 0, -1))# Divide into groups based on quartiles recency_quartiles = pd.qcut(data['Recency_Days'], q=4, labels=r_labels)# Create new column data['Recency_Quartile'] = recency_quartiles# Sort recency values from lowest to highest data.sort_values('Recency_Days')
จะเห็นว่าป้ายกำกับควอร์ไทล์ถูกกลับด้าน เนื่องจากลูกค้าที่ซื้อล่าสุดมีคุณค่ามากกว่า
สามารถกำหนดรายการป้ายกำกับเป็นข้อความหรือค่าอื่น ๆ ได้ตามกรณีใช้งาน
# Create string labels r_labels = ['Active', 'Lapsed', 'Inactive', 'Churned']# Divide into groups based on quartiles recency_quartiles = pd.qcut(data['Recency_Days'], q=4, labels=r_labels) # Create new column data['Recency_Quartile'] = recency_quartiles # Sort values from lowest to highest data.sort_values('Recency_Days')
ป้ายกำกับแบบกำหนดเองที่กำหนดให้แต่ละควอร์ไทล์
การแบ่งกลุ่มลูกค้าด้วย Python