举个栗子!Tableau 技巧(120):用 R 实现 RFM 客户价值分析
关于 RFM 分析,我们之前分享过完全使用计算字段的实现方法:用 RFM 模型分析客户价值 ,如下图。
帖子发出后,有喜欢探索的数据粉咨询:在 Tableau 中是否有更便捷的方法实现 RFM 分析呢?例如使用 R。
的确,我们还可以使用 R 来实现 RFM 分析。今天,一起学习方法吧!
本期《举个栗子》,阿达要给大家分享的 Tableau 技巧是:用 R 实现 RFM 客户价值分析。
为方便学习,我们使用 sample-superstore 数据源。掌握方法后,数据粉可以尝试使用其它数据源。
具体步骤如下:
Step1:安装 R 并启动 Rserve
首先,下载 R 并完成安装,然后安装 Rserve 程序包并启动 Rserve。
install.packages(“Rserve”)
library(Rserve)
Rserve()
Step2:Tableau Desktop 连接 Rserve
打开 Tableau Desktop 连接 R ,并输入服务器和端口号。测试连接通过后点击确定按钮。
Step3:创建计算字段
接下来,创建两个计算字段,RESULT 和 RFM。在计算字段中用 R 的函数计算返回RFM结果:R 最近一次购买时间,F 购买次数,M 购买总金额。
- RESULT 计算字段如下:
SCRIPT_STR('
r=ifelse(.arg1>mean(.arg1),2,1);
f=ifelse(.arg2>mean(.arg2),2,1);
m=ifelse(.arg3>mean(.arg3),2,1);
a<-paste(r,f,m,sep="-")
',
min(DATEDIFF('day',[Order Date],now())),
avg({ FIXED [Customer ID]:COUNTD([Order ID])}),
sum([Sales])
)
- RFM 计算字段如下:
IF [RESULT]='2-2-2' THEN '高价值客户'
ELSEIF [RESULT]='1-2-2' THEN '重点保持客户'
ELSEIF [RESULT]='2-1-2' THEN '重点发展客户'
ELSEIF [RESULT]='1-1-2' THEN '重点挽留客户'
ELSEIF [RESULT]='2-2-1' THEN '重点保护客户'
ELSEIF [RESULT]='1-2-1' THEN '一般保护客户'
ELSEIF [RESULT]='2-1-1' THEN '一般发展客户'
ELSEIF [RESULT]='1-1-1' THEN '潜在客户'
END
Step4:创建图表
将计算字段“RFM”依次拖放至行、筛选器和标记卡的“颜色”中;将度量“Profit”拖放至标记卡的“大小”中;将度量“Sales”和维度“Customer ID”拖放至标记卡的“标签”中。
如此,我们就使用 R 完成了一个 RFM 的树状图客户价值分析。
今天的 Tableau 技巧,你 Get 到了吗?赶快试试看吧!