举个栗子!Tableau 技巧(120):用 R 实现 RFM 客户价值分析

發布於: 2021-06-07

关于 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 到了吗?赶快试试看吧!