数据可视化之PowerQuery篇(十二)客户购买频次分布

https://zhuanlan.zhihu.com/p/100070260

商业数据分析通常都可以简化为对数据进行筛选、分组、汇总的过程,本文通过一个实例来看看PowerBI是如何快速完成整个过程的。

假设数据为一个订单明细表,含有下单日期、客户名称、产品名称等数据,业务需求为:

根据订单表,计算出截止某个日期,购买次数为1-7次、8-14次、14-21次……的客户分别有多少?

看到要求就知道这是个分组问题,一般可以通过计算列或者度量值的方式来完成,之前PowerBI星球也分享过关于分组的文章:

这几种数据分组的方式,你应该掌握!

使用度量值进行分组统计

 

需要根据日期动态计算,那么就不能通过计算列的方式来实现,只能通过度量值来完成。

下面是PowerBI解决这个问题的过程,只需要简单的3个步骤。

1、数据建模

 

根据订单表提取出客户表,以及建立一个涵盖所有订单日期的日期表,分别与订单表建立一对多的关系。

因为要进行分组,所以还要建一个分组表,可以在PowerBI中"输入数据",手工建一个,数据如下:

 

这个表不要与其他表建立关系,数据模型如下:

 

2、建立度量值

建立一个[客户购买次数]的度量值,如下图:

 

 

这个度量值中体现了筛选、分组和汇总的整个计算,值得你好好练习研究一下。

3,数据呈现

将这个度量值放入到矩阵中计算结果,

 

从这里可以看出购买15-21次的客户最多。

可以通过切片器选择任意一个日期查看,

 

还可以通过图表查看每个订单日期的客户累计购买次数分布,

 

 

通过这个面积图,可以明显看出随着时间的推移,客户的复购次数越来越多。

 

 

通过堆积面积图来看,虽然客户的重复下单次数在增加,但总客户数近一年来停止增长,值得关注。

这样就完成了任意一个日期的客户累计下单次数的分组统计,是不是很高效。

以上也是PowerBI数据分析的一个基本流程,从数据建模、DAX的运用到数据呈现,用户最终看到的只是最后一步:数据呈现,你也许觉得最重要的是第二步,写出那个度量值,从难度上来说,这确实需要一定的积累。

但更关键的其实是第一步,建立模型是数据分析的基础,一个良好的模型可以更简单的完成数据分析的需要,也会让度量值的编写变得简洁高效,而糟糕的数据模型,可能你压根无法写出可以实现需求的度量值。

关于数据建模,更需要不断的积累,你不仅要学会分析技术,更要精深业务,每个人都会建立数据模型,但并不意味着你会建立一个良好的模型,数据建模是一门科学,也是一门艺术。

posted @ 2020-05-09 09:30  秋华  阅读(1225)  评论(0编辑  收藏  举报