Pada modul ini kita akan fokus menyiapkan hal yang diperlukan oleh model RFM.
Membuat frequency groups.
#Create Frequency Groups df['F'] = pd.qcut(x = df['Frequency'], q = 4, labels = range(1, 5, 1)) df['M'] = pd.qcut(x = df['monetary'], q = 4, labels = range(1, 5, 1)) df['R'] = pd.qcut(x = df['Recency'], q = 4, labels = range(4, 0, -1))
Membuat RFM scores
#RFM Score df['RFM'] = df[['R', 'F', 'M']].sum(axis = 1)
Membuat fungsi RFM untuk menentukan segmentasi.
#Create the RFM function
def rfm_segment(df):
if df['RFM'] >= 11:
return 'Platinum'
elif ((df['RFM'] >=8) and (df['RFM'] < 11)):
return 'Gold'
elif ((df['RFM'] >=6) and (df['RFM'] < 8)):
return 'Silver'
else:
return 'Bronze'
Sampai disini kita sudah selesai melakukan persiapan RFM. Pada modul selanjutnya kita mulai mengaplikasikan RFM.