1. 概述
当已有的数据中缺少分析所需的数据时,就需要进行计算创造出新的数据。
FineBI 中的计算可以用在很多地方,例如:将数据分割、转换字段的数据类型,例如将字符串转换为日期、聚合数据(仅适用于仪表板 添加计算字段 )、计算占比等等。
其实我们在 数据加工并分析 计算「工作时长」时就已经使用过很多计算,但是计算有哪些方法呢?什么场景下用什么计算呢?
本文将详细介绍:
FineBI 可以使用以下四种主要类型的计算:
聚合计算
明细级别计算(数据源行级别计算)
组件快速计算
2. 明细级别计算
明细级别的计算主要是在「我的分析」的编辑数据中实现。
李明明想要计算「每个员工每天的工作时长」,在编辑数据中进行明细计算,如下图所示:
详细说明如下图所示:
举例:
例如每个订单包含总价和销售单价的数据,需要计算总的购买数量,直接使用总价/销售单价,汇总时将每单对应的购买数量相加得到总购买数量。
使用「合同事实」,新增计算字段「明细级别计算求平均」,直接使用公式合同金额/购买数量,结果情况如下图所示:
3. 聚合计算
聚合计算主要是在仪表板中进行添加计算字段实现。
例如李明明想要计算所有员工的平均工作时长。
在组件编辑界面,添加计算字段,写入公式,点击确定,如下图所示:
注:该公式等同于AVG_AGG(上班时长)。
得到如下结果:
公式就是将所有人每天的「工作时长」求和汇总,计算所有员工打卡次数,然后相除得到平均工时。
详情参见:计算类型选择
聚合计算最大的优势是,能跟随我们选择的维度变化而变化,比如李明明希望在仪表板进行筛选的时候能够根据筛选条件进行变化,筛选某个组,就展示当前组的平均工作时长,如下图所示:
我们将指标卡修改为分组表,拖入「部门」字段,就会显示不同部门的平均工时,拖入姓名,则显示不同员工的平均工时,如下图所示:
这是在编辑数据计算无法实现的优势,因此我们建议可视化分析使用聚合计算。
4. 快速计算
快速计算其实是将我们常用的聚合函数进行了封装,提高你的工作效率。
例如李明明想要计算各类考勤行为的占比,则可以将所有的行为数设置为占比,如下图所示:
则得到所有行为的占比,相当于我们使用聚合计算,如下图所示:
更多参见:快速计算概述
5. 常用公式
5.1 计数和条件计数
李明明想要计算各部门的人数和各部门的缺勤人数。
5.1.1 计算各部门人数
添加计算字段并输入公式:COUNTD_AGG(工号),如下图所示:
注:工号字段需要选择数据表中的字段,不能手动输入文字。
拖入数据如下图所示:
5.1.2 条件计数
缺勤人数需要对计数函数中加入一个条件判断,如果「考勤结果」为缺勤,则计数,否则为空不计数,如下图所示:
更多内容参见:条件求和与计数