漏斗的计算
漏斗的计算归根到底是计算用户最长转化步骤的问题
- 漏斗一般默认是按照日期分组,所以漏斗的问题,实际上是计算用户在每日以及整个统计周期内,最长转化步骤的问题。
- 漏斗往往是多步的,那么就有可能在不同时间周期内完成。因此我们约定,以首事件发生的周期,作为本次漏斗转换的统计周期。(为什么不用目标事件呢,个人的理解是,首先不是每次转换都会有目标的达成,且每次转换的最长步骤可能都不一样)
- 漏斗的计算,每一个周期的计算都是独立的。比如 A1-A2-B的行为序列。A1 发生在1号 A2-B发生在2号。 那么1号 2号都会认为完成了A-B的转换。 这么做是为了避免统计结果会因为选择的时间范围不同而发生变化。
往往,用户的最长转换的路径不是唯一的。如果是简单漏斗,即 我只需要计算每一个步骤的转换人数。那么不唯一就是不重要的。但是,如果我希望去分析这一次转换,比如 看转换时间、分组 等等。那么就必然需要 挑选出唯一的路径。我们称之为 最优的转换的路径
最优转换的路径的规则就是规则中的:优先选择更靠近最终转化目标的事件作为转化事件,并在第一次到达目标事件时,停止继续计算
所有漏斗的计算其实等于,寻找每个用户,每个周期以及汇总周期的最优转换路径的过程。此时再来拆分 ,我们的漏斗中所有的衍生概念和功能就很好理解了。所有功能从计算逻辑上,可以拆分为 作用于计算最优转换路径 之前、之中、之后
1、转换周期:之中。计算最优转换路径时的限定条件,和首事件相隔转换时间之内,才算转换
2、关联属性:之中。 漏斗中,特定2个环节的某个属性值必须一致,才算转换。
3、过滤条件-事件以及公共过滤条件:之前。筛选需要纳入 漏斗计算的事件。
4、分组条件:之后。对 最优转换路径 进行分组
5、计算后的筛选:之后。对最优转换路径再进行二次筛选展示。产品界面 的公共过滤条件 就是此逻辑
单个用户漏斗转换函数计算逻辑: