【第1篇】如何做关键路径漏斗分析

经过两天的反复思考和验证,现将思路总结如下,这些想法可能还不是很成熟,但是已经得到一些业内人士的认可,非常感谢他们的分享。
我这两天一直困惑如何才能精准地将关键路径分析出来。对!就是精准!
但是行业内我了解到大家计算关键路径有两种方法,即有序漏斗和无序漏斗;有两个指标,即访问人数和会话数。
我为什么会卡在这个数据分析项目上,原因是我想把精准地关键路径转化做出来。我举个例子来说明下情况:
1、我们假设我用的是有序漏斗,关键路径是A-B-C-D。
2、我的网络日志储存了如下数据:设备ID,用户访问的时间datetime,点击事件(按钮)event,单次访问步数seq,单日访问次数sid。
3、真实场景情况下,用户并不是直接安装A-B-C-D去访问的,而是A-B-C-B-A-B-C……等情况访问的,另外用户在一次访问会话中,并不一定只有一条直接完成D,有可能完成好几条D的记录,又有A-B或A-B-C好多条记录。
假如该路径是购买路径,一次会话有可能有出现多个订单,多个支付等等。
那么当我们用了访问人数或者会话数来看转化率的话,都会丢失一些真实的路径转化。
4、如果我将主路径A-B-C-D与我的订单表进行关联的话,看看最后到D路径产生了多少订单,那么这个时候我就不得不考虑‘3’中提到的问题了。
这个时候我们要用事件的实际点击次数来分析转化率。
5、恰恰不巧的是,我想通了上面的情况,但遇到了取数的难题。当我从日志表中去提取所需要的主路径转化数据时,用设备id和单日访问次数sid来进行left join匹配发现,输出的结果比左表的行数还多。其中的原因是设备id和sid并不是主路径的唯一标识。因为其中一种原因是当访问A步骤的时候,再到B的时候,由于可能出现循环B步骤,当进行左外连接时,就会出现一对多的情况,会使A表填充来弥补B表多余匹配的记录。
6、要解决‘5’的问题就是在最后匹配的条件上加上a表的点击时间早于b表。
7、经过测试发现‘6’只是减少了一部分重复数据,并没有将输出同a表相同的行数。
8、所以最终还是得用distinct,看人数或者会话次数。

你可能感兴趣的:(【第1篇】如何做关键路径漏斗分析)