本文是我的新书《Power BI电商数据分析实战》中第五章客户分析中的5.5小节,由于案例有连续性,因此本文对上下文进行了修改。新书将在下周(8月30号)跟大家见面,全网可预订。
5.5
客户生命周期
通过研究客户生命周期制定客户回访方案,本例使用
Power Query
结合
DAX
实现,计算每个客户最近一次消费的时间间隔,根据客户最近一次消费的时间间隔的比例,确定客户生命周期。
5.5.1 提取客户最近消费间隔
如图5-27到5-30所示,将订单报表导入到Power BI中
图
5-27
由于订单报表是CSV格式,因此选择对应的文件格式进行导入。
图
5-28
选择文件
图
5-29
编辑导入的数据
图
5-30
只保留
[
买家会员名
]
和
[
订单付款时间
]2
列,删除其他列,如图
5-31
所示。
图
5-31
将数据按照
[
买家会员名
]
进行分组汇总,在【开始】选项卡点击【分组依据】,如图
5-32
所示。
图
5-32
分组依据设置为
[
买家会员名
]
,其他参数可以默认不改,点击右下角的【确定】按钮,如图
5-33
所示。
图
5-33
分组汇总后的结果如图
5-34
所示,不过目的是要计算时间间隔,需要修改公式。
图
5-34
在【开始】选项卡点击【高级编辑器】,如图
5-35
所示。
图
5-35
找到“分组的行”这一行公式,如图
5-36
所示。
图
5-36
将“
Table.RowCount(_)”
修改成“
[#”
订单付款时间
”]
”,“
number
”修改成“
list
”,如图
5-37
所示。
图
5-37
修改后,每个会员在店铺消费的时间都会在列表(
List
)中,如图
5-38
所示。
图
5-38
由于订单数据本身是按时间最近排序,最近的订单排在表格的前面,因此在聚合成
List
后也会按时间最近排序,只要取出
List
中的前两个日期即可,在【添加列】选项卡点击【自定义列】,如图
5-39
所示。
图
5-39
列名设置为
[
最近两次交易的时间
]
,键入公式
=List.FirstN([
计数
],2)
,如图
5-40
所示。
图
5-40
函数说明
List.FirstN
函数功能:取出列表中的前
N
行,返回一个新列表
函数语法:
List.FirstN(
列表格式的列名,行的数量
)
再添加新列,如图
5-41
所示,计算出列表中日期的条数。
图
5-41
函数说明
List.Count
函数功能:计算列表中的元素个数
函数语法:
List.Count(
列表格式的列名
)
将“
1
”过滤掉,只有一次成交的客户进行过滤,如图
5-42
所示。
图
5-42
添加新列,如图
5-43
所示,计算出两次交易的天数间隔,由于按天数限于图书的展示篇幅,本文将天数转变成月份,将天数除以
30
采取四舍五入的方式计算月份间隔。
图
5-43
函数说明
List.Max
函数功能:计算列表中最大的指
函数语法:
List.Max(
列表格式的列名
)
List.Min
函数功能:计算列表中最小的指
函数语法:
List.Min(
列表格式的列名
)
Duration.Days
函数功能:返回日期天数
函数语法:
Duration.Days(
日期
)
Number.Round
函数功能:四舍五入
函数语法:
Number.Round(
数值
)
计算出
[
最近消费时间间隔
]
后,再进行分组汇总,在【开始】选项卡点击【分组依据】,如图
5-44
所示。
图
5-44
最终得到的表格如图
5-45
所示。
图
5-45
将
[
最近消费时间间隔
]
设置为升序,并将数据格式修改成整数,如图
5-46
所示。
图
5-46
设置完毕后,在【开始】选项卡点击【关闭并应用】,如图
5-47
所示。
图
5-47
5.5.2 计算消费间隔的累计占比
回到报表视图,选中上文设置好的表,在【建模】选项卡点击【新建列】,如图
5-48
所示。
图
5-48
键入以下表达式
累积占比
=SUMX(FILTER('
生命周期
',EARLIER('
生命周期
'[
最近消费时间间隔
])>='
生命周期
'[
最近消费时间间隔
]),'
生命周期
'[
计数
])/SUM('
生命周期
'[
计数
])
备注:生命周期是表的名称,我把订单报表命名为生命周期
将
[
最近消费时间间隔
]
、
[
计数
]
和
[
累积占比
]
设置为【表格】对象,如图
5-49
所示。
图
5-49
切换到数据视图将
[
累积占比
]
设置为百分比格式,如图
5-50
所示。
图
5-50
回到报表视图
,
观察结果,时间间隔为
7
个月时,累积占比超过
80%
,说明在这个数据集中客户的生命周期为
7
个月。经营者应该在
7
个月之前,对客户进行激活的营销动作,如图
5-51
所示。
图
5-51
将【表格】对象设置成【折线和簇状柱形图】对象,如图
5-52
所示
图
5-52
【折线和簇状柱形图】对象的共享轴设置为
[
最近消费时间间隔
]
,列值设置为
[
计数
]
,行值设置为
[
累积占比
]
,如图
5-53
所示。
图
5-53
设置好的【折线和簇状柱形图】对象,如图
5-54
所示。
图
5-54
好东西请分享给更多有需要的朋友!
版权说明:零一公众号内容均为原创,如需转载请联系。
连载拓展阅读(
点击即可浏览
)
从0开始教你做数据分析-01
从0开始教你做数据分析-02
从0开始教你做数据分析-03
从0开始教你做数据分析-04
从0开始教你做数据分析-05
从0开始教你做数据分析-06
从0开始教你做数据分析-07