Hello,大家好!今天给大家分享的是Power BI中如何根据一个花名册来计算企业各月份入离职人数及离职率。入职人数和离职人数是有比较明确的计算规则,但是,对于离职率来说不同的公司、不同的场景下选择的时间维度不一样就会有差异,例如,有的可能按照整年来算离职率,那么这个计算逻辑很明显跟每个月的离职率计算不一致。我们这里采用的是按月计算,月度离职率=当月离职人数/当月在职人数*100%,明确指标的计算逻辑后,咱们直接开始写表达式。这里还需要强调下我们花名册的表结构(这个是简化版的)有三列,员工工号、入职日期、离职日期。
在职人数的计算逻辑:入职日期小于等于当前月份最大日期且离职日期大于当前月份最大值或离职日期为空。
离职人数的计算逻辑:离职日期不为空且离职日期在当月内
离职率:当月离职人数/当月全部在职人数*100%(以此为例)
在职数量 =
VAR maxDate =//获取外部年月筛选上下文中的最大日期
MAX ( '日期表'[Date] )
VAR minDate =//获取外部年月筛选上下文中的最小日期
MIN ( '日期表'[Date] )
VAR onduty =//在职满足两个条件:1.入职日期早于当前最大日期;
//2.离职日期要晚于当前日期的最大值或者离职日期为空
CALCULATE (
[员工数量],
FILTER (
ALL ( '花名册' ),
'花名册'[入职日期] <= maxDate
&& (
'花名册'[离职日期] > maxDate
|| ISBLANK ( '花名册'[离职日期] )
)
)
)
RETURN
IF ( minDate <= TODAY (), onduty, BLANK () )
//这里判断是为了规避展示未来还未发生的日期的数据
离职人数 =
VAR max_date =//获取外部年月筛选上下文中的最大日期
MAX ( '日期表'[Date] )
VAR min_date =//获取外部年月筛选上下文中的最小日期
MIN ( '日期表'[Date] )
RETURN
CALCULATE (
[员工数量],
FILTER (
'花名册',
'花名册'[离职日期] >= min_date
&& '花名册'[离职日期] <= max_date
&& NOT ISBLANK ( '花名册'[离职日期] )
)
)
//离职人数计算是当月的离职人数
以下就是计算后的结果
免费课程:Power BI免费课程更新至202405月 免费课程绝大部分都是录制视频讲解,针对典型案例进行讲解,大家可以当做是一个字典,需要时候来找一找。免费课程不系统,有些基础内容小编默认你是知道,所以没有详细讲解,需要系统学习推荐看看小编的付费系统课程。 付费课程:Power BI会员课程更新(202310) 付费课程从零基础开始讲解,上手平滑,深入浅出,结合实际案例针对性强。具体可以参考介绍,课程内容持续更新,永久学习!(付费后,小编后面开发推出的所有课程和资源免费获取,无需再付费!) 交流学习群:本群为付费制(49/一位),仅作为学习交流Power BI/Excel/Tableau/SQL等数据分析、数据处理工具用,有问题可以描述清楚你的问题,附上案例数据求助。除此外,不讨论任何无关事情,违者立刻剔除。啊?不是吧?加群还要付费?嗯,是的,所以,加群后请谨言慎行!群里会不定期分享各类模板、学习书籍等资讯,确认以上条件都能接受再添加小编私信!