FineBI漏斗图分析转化率计算,需要获取当前节点和上一节点的转化率,需要获取错行值实现方案
FineBI漏斗图分析转化率计算,当前节点和上一节点的转化率,需要获取错行值
下面这张图大家很熟悉吧,非常经典的漏斗转化率分析。
从漏斗图看到需要计算转化率,都需要获取上一步漏斗的值,比如计算上一个省份的门店数量与下一个省份的门店数量差,又比如计算上一步数据到下一步数据的转化率。
这里以计算转化率为例,我们需要获取「上一步」的值,便于我们两列相除。
如图,有2种方式获取上一行门店数量。
使用window_sum函数 按照门店数量desc降序排序注意排序字段要用【】括起来这里很容易出错,[-1,-1]代表获取上一行的值
上一行门店数量=WINDOW_SUM(COUNTD_AGG(
销售明细表
门店编码
)
,
[
]
,
[
C
O
U
N
T
D
A
G
G
(
{销售明细表_门店编码}),[],[COUNTD_AGG(
销售明细表门店编码),[],[COUNTDAGG({销售明细表_门店编码}),“desc”],[-1,-1])
最后算转化成率就很简单了
如果要计算都与第一步的转化率可以参考如下图
第二种办法对于低版本finebi也可以实现的另一种办法。就要用到def和earlier的经典搭配了
第一步,首先要计算每个省的门店数量=DEF(COUNTD_AGG(
销售明细表
门店编码
)
,
{销售明细表_门店编码}),
销售明细表门店编码),{销售明细表_省份})
然后需要将每个省的门店数量安装大小排序产生一个排名=
DEF(COUNTD_AGG(
销售明细表
省份
)
,
{销售明细表_省份}),
销售明细表省份),{销售明细表_省份},[
销售明细表
每个省份门店数
>
E
A
R
L
I
E
R
(
{销售明细表_每个省份门店数}>EARLIER(
销售明细表每个省份门店数>EARLIER({销售明细表_每个省份门店数})])+1
从这里就可以看到产生如下表格了
到这里我们需要通过排名 找到上一步的门店数量,上一步的门店数量=DEF(COUNTD_AGG(
销售明细表
门店编码
)
,
{销售明细表_门店编码}),
销售明细表门店编码),{销售明细表_省份},
销售明细表
排名
+
1
=
E
A
R
L
I
E
R
(
{销售明细表_排名}+1=EARLIER(
销售明细表排名+1=EARLIER({销售明细表_排名}))
此刻就可以产生一个表格如图
接下来就可以成功按照上面一样生成转化率计算了,转化率=IF(ISNULL(
销售明细表
上一步的门店数量
)
,
1
,
{销售明细表_上一步的门店数量}),1,
销售明细表上一步的门店数量),1,{销售明细表_每个省份门店数}/${销售明细表_上一步的门店数量})
设置一下百分比展示,就可以看到图表成功实现了。
以上就是finebi想要计算各阶段的转化率,需要获取上一阶段的数据,再进行计算。简单来说,就是利用「行间计算」功能,来实现错行取数的2种解决办法,供大家参考。