GIGAMIND
Folder:
108 Data Analysis
File:
108.30.10.20.20.10.10 Data Analysis - Segments - RFM - How to segment RFM
RFM - How to segment RFM
Step 1
To implement this model you must have RFM information on each individual customer like this:
customer_id recency_days frequency_times monetary_clv
1 3 6 540
2 6 10 940
3 45 1 30
4 21 2 64
5 14 4 169
Step 2
Then, for each of R/F/M sort the list in order by score and give each customer_id
a score from 1-5.
Data note: In this example there are only 5 records, so each
customer_id
gets a unique score, but in most cases you will divide the groups evenly. E.g. if there are 100 customers, there will be 20 of them with each score.
R (ascending order)
customer_id r_value r_score
1 3 5
2 6 4
5 14 3
4 21 2
3 45 1
F (descending order)
customer_id f_value f_score
2 10 5
1 6 4
5 4 3
4 2 2
3 1 1
M (descending order)
customer_id m_value m_score
2 940 5
1 540 4
5 169 3
4 64 2
3 30 1
Step 3
Put r_score
on the x-axis. Put AVG(f_score + m_score)
on y-axis.
In most cases, it seems that R & F are used to segment customers. In this case, as in the reference (1) I'm averaging
(F+M)/2
because frequency and monetary value are closely related.
customer_id x_value y_value
[1] 5 4
[2] 4 5
[3] 1 1
[4] 2 2
[5] 3 3
F/M
5 | [2]
|
4 | [1]
|
3 | [5]
|
2 | [4]
|
1 |[3]
-------------------------
1 2 3 4 5 R
Source:
- Me