美文网首页PowerBI专栏商业智能BI那点事儿Power BI干货
Power BI商业数据分析模型:RFM客户价值分析

Power BI商业数据分析模型:RFM客户价值分析

作者: PowerBI星球 | 来源:发表于2020-10-20 20:33 被阅读0次

    前面几篇文章介绍了如何用PowerBI对客户进行分析,相关的分析维度和方式有很多,实际应用也是千差万别,但谈到客户分析,不得不提及一个经典、通用的分析模型:RFM模型

    RFM模型是衡量客户价值的一个重要的工具和手段,它通过客户的三个行为指标对客户进行分类:

    Recency:最近一次消费时间间隔

    Frequency:消费频率

    Monetary:消费金额

    RFM模型的名字也就是这三个指标首字母的组合,一般来说,最近一次消费的间隔越短、消费频率和消费金额越高,客户价值越大。

    这三个行为指标可以继续细分,最常用的是二分法,每个指标按照特定的阈值划分为两类,比如按平均值划分,优于指标平均水平的设置为1,否者为0,这样组合成8个客户类别,其特征分别如下:

    RFM分析模型的重点就是计算出每个客户的三项指标,然后划分为特定的客户类别,这篇文章就来看看,在PowerBI中如何进行RFM分析。

    一、建立模型

    模拟数据为一个订单明细表,包含每个客户的下单日期和下单金额等明细数据,以及对应的维度表,数据模型如下图:

    然后为了方便分组,建立一个RFM类型表:

    二、建立RFM度量值

    这是最关键的一步,分别写R、F、M的度量值。

    Recency:最近一次消费时间间隔

    这里以最新的业务日期为锚点,最新业务日期的度量值为:

    业务最新日期 =

    MAXX( ALL( '订单表' ),'订单表'[订单日期] )

    然后计算客户最后消费日期距离业务最新日期的天数:

    R 最后消费间隔天数 =

    DATEDIFF( 

        MAX( '订单表'[订单日期] ),

        [业务最新日期],

        DAY 

    )

    对R指标采用二分法,本案例以常用的平均值为分界点,平均间隔天数的度量值为:

    R 平均间隔天数 =

    AVERAGEX( 

        ALLSELECTED( '客户表' ),

        [R 最后消费间隔天数] 

    )

    R值确定的依据为:如果最近消费间隔天数比平均天数短,则客户价值越高,设置为1,否则设置为0:

    R 值

    IF( 

        ISBLANK( [R 最后消费间隔天数] ),

        BLANK(),

        IF( [R 最后消费间隔天数] <[R 平均间隔天数],1,0)

    )

    这样,R的指标就计算出来了,下面用同样的方式来计算F和M.

    Frequency:消费频率

    F 消费次数 =

    DISTINCTCOUNT( '订单表'[订单号] )

    F 平均消费次数

    AVERAGEX( 

        ALLSELECTED( '客户表' ),

        [F 消费次数] 

    )

    F 值 =

    IF( 

        ISBLANK( [F 消费次数] ),

        BLANK(),

        IF( [F 消费次数] >[F 平均消费次数],1,0)

    )

    Monetary:消费金额

    M 消费金额 = SUM( '订单表'[销售额] )

    M 平均消费金额 =

    AVERAGEX( 

        ALLSELECTED( '客户表' ) , 

        [M 消费金额] 

    )

    M 值 

    IF( 

        ISBLANK( [M 消费金额] ),

        BLANK(),

        IF( [M 消费金额] >[M 平均消费金额],1,0)

    )

    上面的这些度量值已把R、F、M三个指标计算出来,下面来看看如何展现根据这三个指标来对客户进行分类。

    将三个指标组合成一个RFM值:

    RFM 值 = [R 值]&[F 值]&[M 值]

    计算每个客户所属的RFM类型:

    RFM 类型 =

    VAR RFM_value = [RFM 值]

    RETURN

    CALCULATE( 

        VALUES( 'RFM类型表'[类型] ) , 

        'RFM类型表'[RFM]=RFM_value 

    )

    至此,RFM模型所需要的度量值已写完,利用这些度量值就可以进行RFM分析了。

    三、建立RFM分类模型

    首先,可以从整体上看看这8个分类分别有多少客户,以及占比是多少,用条形图和环形图来展示:

    然后可以用表格更明细的显示每个客户的R、F、M值分别是多少,以及所属的RFM类型,

    还可以利用散点图来看看每个类别客户的分布情况:

    平面二维散点图只能展示两个指标,这里将M、F分别作为X轴和Y轴,而另外一个指标R,作为图例,按不同的颜色来展示。

    把这些可视化图表组合到一起,就形成了一个RFM分类模型:

    除了上面提到的几个主要图表,这里还加入了RFM三个指标的平均值,以及其他细节的设置,进而构成了一个完整的RFM分析模型。

    在这个模型中,可以点击按RFM类别来动态查看具体客户的详情和分布情况,

    也可以对特定维度的客户进行分类,比如按城市查看分类情况,

    是不是很灵活,它可以根据用户的探索,从多个维度进行RFM分类,并动态快速返回分类结果,这是RFM模型的优势,更是PowerBI的优势。

    RFM模型需要写的度量值看起来很多,但其中用到的DAX并不复杂,上手学习一段PowerBI,多练习、先模仿,每个人都可以做出一个这样的模型。

    该模型已经发布到web,源文件可以在知识星球中下载。

    -精彩推荐-

    Power BI应用技巧:动态显示最近N天的数据

    PowerBI数据分析和可视化实战案例

    PowerBI时间相关的度量值,都在这里了

    采悟 from PowerBI星球

    相关文章

      网友评论

        本文标题:Power BI商业数据分析模型:RFM客户价值分析

        本文链接:https://www.haomeiwen.com/subject/bthjmktx.html