前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PowerBI 帮你跟踪客户在产品之间的流动

PowerBI 帮你跟踪客户在产品之间的流动

作者头像
BI佐罗
发布2020-12-11 11:01:06
6740
发布2020-12-11 11:01:06
举报
文章被收录于专栏:PowerBI战友联盟

企业的商品有很多,客户的选择也有很多。

客户放弃选择某个产品,并不表示客户离开这个品牌本身,因此,我们需要跟踪客户在品牌中的品类或者产品中的流动情况,如下:

这反应的业务逻辑是,在开始购买区间购买了复印机的客户在流向区间没有购买复印机,转而购买其他产品的情况。

设计要点

数据模型,以原始的情况呈现。

为了设计流向可视化以及给出用户区间选择,同时不破坏业务数据模型,采用非侵入式设计,构建:

  • 两个日期表,分别提供两个日期轴,用于用户可以拖拽
  • 两个产品表,分别提供流向图的来源和去向以支持可视化

业务逻辑

基于这样的流向的业务逻辑,用度量值给出复杂计算。

用 PowerBI DAX 表示,如下:

代码语言:javascript
复制
CRM.UserNumber.Flow = 

// 1.选择日期,和交易的产品,计算客户集合

VAR _users_source = 
    CALCULATETABLE( 
        VALUES( 'Order'[CustomerID] ) , 
        TREATAS( VALUES( 'Calendar.Source'[Date] ) , 'Calendar'[Date] ),
        TREATAS( { SELECTEDVALUE( 'Product.Source'[Subcategory] ) } , 'Product'[Subcategory] )
    )

// 2.选择日期,和交易的产品,计算客户集合

VAR _users_dest = 
    CALCULATETABLE( 
        VALUES( 'Order'[CustomerID] ) , 
        TREATAS( VALUES( 'Calendar.Dest'[Date] ) , 'Calendar'[Date] ),
        TREATAS( { SELECTEDVALUE( 'Product.Dest'[Subcategory] ) } , 'Product'[Subcategory] )
    )

// 3.计算 1 中的客户集合,流动到 2 中的数量

RETURN COUNTROWS( INTERSECT( _users_source , _users_dest ) )

使用 TREATAS 进行动态挂载,将辅助数据挂入数据模型完成计算。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-12-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 PowerBI战友联盟 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 设计要点
  • 业务逻辑
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档