LOD函数的全称是详细级别表达式(Level Of Detail Expressisons)。它主要是为了克服一些表达式之间计算粒度不一致的问题,本文将详细为您介绍如何使用LOD函数。
使用场景
详细级别表达式,其中详细级别指数据聚合粒度的层次,不同的级别代表着数据不同的聚合度和粒度,能够处理在一个可视化视图中包含多个数据详细级别的问题。
如果分析过程中需要添加一个维度,其明细程度高于或者低于已有视图的可视化明细程度,但又不希望改变现有图形展示内容,就可采用详细级别表达式功能。
操作步骤
数据集编辑页面单击新建计算字段,进入配置弹窗页面。
填写字段名称(①),在字段表达式中选择需要引用的LOD函数及字段(②),并配置字段类型等配置项(③)。
新建完成后,单击确定按钮。使用新增字段创建仪表板图表时,可以看到相同区域的订单金额总额,不受产品类型影响而变化。
表达式说明
基本公式
三种LOD表达式的使用结构和语法分别如下:
使用结构
lod_ fixed{<维度声明> : <聚合表达式>}
lod_ include{<维度声明> : <聚合表达式>}
lod_ exclude{<维度声明> : <聚合表达式>}
示例:lod_fixed{ [订单日期]:sum([订单金额])}
语法说明
fixed |include|exclude :定界关键字,制定了LOD的范围。
<维度声明>:指定聚合表达式要连接到的一个或多个维度。使用逗号分隔各个维度。
<聚合表达式>:聚合表达式是所执行的计算,用于定义目标维度。
过滤条件
过滤条件非必填。
在Quick BI中除了基本的公式外,还支持写过滤条件,具体表达式如下,以冒号隔开维度声明、聚合表达式和过滤条件。
lod_fixed{维度1,维度2...:聚合表达式:过滤条件}
lod_include{维度1,维度2...:聚合表达式:过滤条件}
lod_exclude{维度1,维度2...:聚合表达式:过滤条件}
fixed函数应用
fixed详细级别表达式使用指定的维度进行计算,而不引用其他任何维度。
应用场景一:计算每个区域的销售金额总和
当您在分析地区分布下销售订单情况时,数据表中存在维度区域和省份,需要用fixed计算区域对应的金额总和,因为fixed详细级别表达式不考虑其他维度级别,只计算表达式中引用的维度,故可以计算出对应区域的销售金额和。
字段表达式:各地区金额和=lod_fixed{[区域]:SUM([订单金额])}
。
应用场景二:分析客户复购情况
在营销过程中,您可能经常会遇到需要对“客户购买频次”的场景进行分析,通过查看客户购买次数的数量和分布,来分析客户的复购黏性。即需要计算购买过一次、两次、三次...的顾客分别多少。
字段表达式:购买频次=lod_fixed{[用户id]:count(distinct([订单id]))}
。
include函数应用
include详细级别表达式将指定的维度作为分组依据进行计算。
应用场景:计算平均客户销售额
当您在分析各种产品的销售情况时,需要查看平均客户销售额,可以通过include先计算每个客户的总订单销售金额,再通过平均值的聚合方式计算展示。
字段表达式:客户总订单金额=lod_include{[用户id]:AVG([订单金额])}
。
exclude函数应用
exclude详细级别表达式将去除表达式中指定的维度后进行计算。
应用场景:计算区域下各省份销售额占比
当您在分析区域下各省份的销售额数据情况时,同时还需要查看该区域的总销售数据、以及省份与其的销售额占比时,可以通过exclude函数先计算出除去当前省份后该地区的销售额,再通过聚合方式求和计算出该区域的总额。
字段表达式:区域总销售额=lod_exclude{[省份]:AVG([订单金额])}
。