1. 首页 > 知识问答

费用分摊的原则和方法(BI数据分析经典案例分享)

上周介绍了一个基础的分析案例(Power BI数据分析入门案例:目标实际对比),这里我们再以费用分摊的案例来帮你进一步理解PowerBI数据分析的思路。

 

假设有两张表,一个是每日销售表,一个是每月发生的费用,模拟数据如下:

 

需要将每月的费用按当月销售额的占比,分摊给每个产品、或者分摊到业务员/部门,应该怎么做呢?其中业务员和部门是层级关系。

 

同样按照上篇文章的思路,按下面三个步骤进行。

 

1、根据分析目的完善维度表

 

由于要按照各个维度来分摊,所以先根据现有的表来生成维度表。

 

(1)产品维度表

产品表 = VALUES('销售表'[产品名称])

 

 

(2)业务员维度表

 

由于业务员和部门是层级关系,可以用SUMMARIZE一次性从销售表中提取两个字段:

 

业务员表 =

SUMMARIZE(

'销售表',

'销售表'[销售部门],

'销售表'[业务员]

)

 

 

这样就提取除了全部的业务员以及所属的部门。

 

(3)日期维度表

 

关于日期表不再赘述,你可以参考这两篇文章自行创建:

玩PowerBI必备的日期表制作方式汇总

分享一个更实用的Power BI日期表

 

2、建立数据模型

 

通过上面的准备工作,现在有5张表,原有的销售表、费用表,以及新建的产品表、业务员表和日期表。

这5张表可以这样建立关系:

 

三个维度表根据需要,分别与不同的事实表建立一对多的单向关系。

 

3、建立度量值并展现分析结果

 

有了上面的模型,下面就可以写度量值来计算分摊金额。

 

为了下面度量值更简洁的书写,先写两个基础度量值:

销售额合计 = SUM('销售表'[销售额])

费用合计 = SUM('费用表'[费用额])

 

为了得到分摊额,首先需要计算出分摊比例,度量值可以这样写:

分摊比例 =

DIVIDE(

[销售额合计],

CALCULATE([销售额合计],ALLEXCEPT('销售表','日期表'[年度月份]))

)

 

分母只保留年度月份的筛选,是为了计算出每月的销售额合计,其他上下文的销售额除以该月的合计销售额,就是分摊比例。

 

然后分摊比例乘以当月的费用合计,就是应分摊的费用额:

分摊金额 = [费用合计]*[分摊比例]

 

用矩阵展示如下,将费用分摊到每个产品:

 

如果想将费用分摊到业务员和部门,同样是这些度量值,只需要调整上下文,将产品换成业务员就可以了:

 

这样就实现了任一维度的费用分摊,并没有用到复杂的DAX公式。

 

通过这个例子,不仅是学习如何解决分摊问题,还可以进一步的理解度量值的逻辑,它是一个动态的值,通过上下文的切换动态返回当前上下的结果,当然也不要忘了,度量值背后的数据模型,才是数据分析的灵魂。

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站不拥有所有权,不承担相关法律责任。如发现有侵权/违规的内容, 联系QQ15101117,本站将立刻清除。

联系我们

在线咨询:点击这里给我发消息

微信号:666666