不得不考虑的时间因素

Mechanical-Clock  在网站数据分析中,时间是最常见也是最不可或缺的维度之一,大部分情况下用于限定指标统计的范围和粒度,同时时间因素也会对指标的一些统计规则和细节造成影响,而在某些数据分析中我们很容易忽略时间因素的影响,这些影响可能误导最终的结论。

  发现这个问题是在一个数据提取的需求中,网站每天会发布很多新的内容,这些新的内容需要进行推荐,不然就会被埋没,所以很多网站都会有“最新推荐”之类的模块,而这个数据需求就是分析应该推荐哪些新内容?网站新发的内容质量参差不齐,而且数据积累较少,而推荐模块需要放置那些有潜力的新内容,以便潜力充分发掘后成长为热门内容,所以数据分析要做的就是去寻找那些有潜力的新发内容。如果是TOP10的推荐榜单,最简单的做法就是根据新内容的访问量或者转化率进行排序选前十,但其中有很多值得注意的地方,关于转化率需要注意的地方可以参考关键指标背后的秘密这篇文章,这里主要讨论如果以内容的访问量进行排序,如果选择近一周的汇总数据,我们需要注意什么?也许你已经想到了,之所以这里举例新内容,是因为新内容有一个发布时间(Publish Time),就像一个人的出生日期,而从发布时间到当前的时间间隔就是内容的持续时间,也可以认为是内容的生命期(Lifetime),就像一个人的年龄。内容的持续时间越长就获得越多的数据积累,相应获得高访问量的机会就越大,如果我们比较一周中在不同时间发布的内容在该周的总访问量,那些就会掉入错位比较的陷阱,或者叫“Mismatch”。

Unfair-Fight  一个形象的比喻就是刚刚入伍的新兵跟久经沙场的老将的决斗,虽然新兵不是完全没有胜出的机会,也许那个新兵天生勇猛,或者有着一股初生牛犊不怕虎的冲劲,可以一举击败经验丰富的老将,但在大多数情况下这种可能性较小,这是一场不公平的决斗,而在数据分析中我们需要尽量去避免这类不公平的决斗(比较)。

内容和商品分析

  其实日常中发生这类错误的情况可能很普遍,当我在博客新发文章几天后上Google Analytics去看数据,发现新文章页在相对较后面的位置,不是因为真的没人看,而是GA上默认展现近一个月的汇总数据,报表根据Pageviews排序的结果新内容无法在短时间内迅速冲到前几位。对于那些新发内容或者新上架产品频率不高的网站,运营人员可能比较清楚哪些是新内容,所以通过一些人为的辨认调节在分析的时候不易掉入陷阱,但对于每周有上百个新发内容的网站,这类错误的发生很可能埋没一些优质的新品。

  我们需要找到一些办法去规避这个时间因素对分析结果的影响,通常我们在选择比较对象的时候需要控制所有的比较对象具备相同的持续时长,比如我们比较新内容的热门度,统一选择近一周的数据,对于较早发布的内容摒弃之前的数据,而近一周内刚发布的内容则舍弃不参与这次比较,等到有了完整的一周数据之后再加入比较。这样虽然可以确保比较在同一基准线上,但无疑延后了评估的结论,对于某些一上来就表现抢眼的内容无法及时发现,于是这里采用统计单位时间指标表现的方法,即根据内容的发布时间统计得到每个内容的持续时间(一般精确到天即可),然后将内容的总体访问量除以这个持续时间,就得到了单位时间的内容访问量,进而进行比较:

Contents-visits-sort-table

  上表取的是5个新发布内容近10天的访问量数据,同时加入了内容自发布以来的持续天数,我们用总的访问量除以持续天数计算得到平均每天访问量,然后以总访问量和平均每天访问量分别进行降序排列,得到完全不一样的排名。如果按排序1,我们完全可能忽略D内容的强劲表现,而权衡时间因素之后的排序让我们能够更加准确的把握有潜力的新内容。

  以上的方法同样适用于电子商务网站的商品分析,很多电商网站希望在新商品中挑选有足够潜力的商品进行重点营销,用于打造所谓的“爆款”,从而进一步促进订单量的增长提升销售额和利润。对有潜力新品的挑选一方面需要足够敏锐的嗅觉和眼光,另一方面就要借助数据分析,而这个时候不得不考虑上面提到的时间因素的影响,记住一个月内销售20件的商品不一定比销售50件的差,关键在于这些商品你是何时上架的,使用有效的方法进行评估才能找到真正有潜力有价值增长点的商品。

  要知道任何的网站内容或产品都不是经久不衰的,都有它们自己的生命周期,所以明智的网站运营永远在不断寻找新的生长点,如果数据分析中欠缺考虑时间因素,那些有潜力的产品和内容很可能就会被“久经磨练”的产品内容长期压制,导致网站新陈代谢过于缓慢,进而落后于其他网站。

用户分析

  在进行用户分析的时候,同样需要注意时间因素,如用户RFM分析用户忠诚度价值评分用户生命周期价值等,这些基于用户在一段时间内持续性行为分析的模型都易掉入时间的陷阱。我们没法奢求一个只注册了一周的新用户在近一个月的访问频率高于老用户,因为你只给了他7天的时间,而与他对决的是拥有充裕的30天时间的用户;同样你不应该去比较一个仅使用一个月的新用户与一个一直在持续使用的老用户在三个月或半年中的消费次数、消费金额等,因为他们不在同一起跑线上。但新用户拥有潜力,指不定他们就会成长为更加高价值的忠诚用户,所以在针对用户的营销中我们需要消除这个因素的影响,同样使用除以用户使用网站持续时间(从用户首次访问或者注册时间开始计算)的方法计算单位时间的指标表现,使用RFM模型看下考虑时间因素前后对用户评估的差异:

RFM-with-duration-table

  如上表所示,假如RFM模型选择了近100天的数据来对用户进行分析,这里同样加入“持续时间”这个统计量,即用户从注册到当前的天数,如果用户的注册时间在100天之前,那么用户在该统计周期中的持续时间就是100天(最大期限)。RFM的三个指标中的最近购买间隔(R)不受用户持续时间的影响,因此在考虑时间因素时不用做变换,而购买频率(F)和消费金额(M)都会受到持续时间的影响,需要除以持续时间,计算得到单位时间(这里是天)的数值,即表格中每位用户在“是否考虑时间因素”前后的指标变换。从变换前后的比较来看,用户1因为是持续使用的老用户,未考虑时间因素前在购买频率和消费金额上具有明显优势,但数据变换之后,用户2所表现的粘性和价值更高,即用户2虽然使用网站时间不长,但在单位时间的购买消费上优于用户1,我们通过雷达图进一步看下考虑时间因素前后的效果:

RFM-with-duration-radar

  图中对数据进行标准化评分后,蓝线代表用户1,红线代表用户2,虚线表示未考虑时间因素,实现代表考虑了时间因素,可以看到用户2在考虑时间因素之后价值被明显放大,从图中可以得到用户2的预期价值优于用户1。如果我们不去考虑时间因素的影响,分析的结果就会产生明显的偏差,进而可能误导对用户的正确评估。

  其实这里提及的时间因素还是一个遵循对比原则的问题,比较的对象之间必须具备可比性,不然比较的结果就没有任何的意义

  很久没有更新博客了,因为这段时间的变动没有时间去思考和整理一些新的内容。这篇文章中提及的分析中需要考虑到的时间因素其实在很多情况下都遇到过,尤其是对一个时间周期内汇总的统计指标做细分分析的时候需要格外注意各细分项存在的时间周期是否一致,希望对大家有所启发和帮助。

不得不考虑的时间因素》上有 16 条评论

  1. Pingback 引用通告: 网站建设:不得不考虑的一个时间因素 - 蓝枫博客

  2. 豆丁

    有个问题请教下:
    文中将购买频率标准化的方法是将9/100、3/20,上面的9&3代表的是购买次数,100&20是单位时间吧?
    一般购买频率计算是count(购买次数)/(当前时间-注册时间),这里是否还有必要再次对购买频率根据时间进行标准化?

    回复
  3. joegh 文章作者

    @豆丁: 你好,这里的频率是指一段时间内发生的次数,并没有除以时间,不然不会这么高的,所以考虑时间因素之后需要除以持续时间来获得单位时间的频率。
    博客因为会有很多垃圾评论,所以评论需要审核的 ;)

    回复
  4. CC格调

    时间因素确实挺重要的 请教个问题:对一个网站而言,周末的流量都会有一定的变化,如何排除周末这个因素来分析网站是否正常呢?

    回复
  5. joegh 文章作者

    @CC格调: 使用以周为周期的同比,周末的数据跟周末的去比较,只要同比增长没有明显异常就可以。取每天的数据分析趋势可以区分周中数据和周末数据去取。

    回复
  6. sys

    我是一名程序员,因为项目需要我才开始接触数据分析,看到你的博客学到了很多东西,但是我有个问题是 ,分析的算法 和数据仓库 和编程角度的算法和数据库 是不是一个概念,如果是,做分析的人如何去实现那些复杂的算法 和数据库设计的???

    回复
  7. joegh 文章作者

    @sys: 你好,不知道你的意思我理解的对不对。
    我觉得,算法是数据分析和数据应用的需要,做数据分析了解统计学的基础和一些分析的方法是必需的;而数据仓库或数据库是数据存放和计算的平台,编程的方法也有助于算法和数据提取的实现。
    我觉得底层的数据仓库和数据库的设计实现和数据分析的职责基本可以实现分离,所以数据分析师没必要承担所有的职责,但懂一些数据库和SQL的知识可以让数据分析的工作更加游刃有余。

    回复
  8. sys

    很感谢你的回复,不知道博主有没有打算用一个实际的案例 给大家分享一下如何建立数据仓库,做数据清理,到olap运用等等,那可就是造福人类了 呵呵

    回复
  9. Pingback 引用通告: 不得不考虑的时间因素 | 起信

  10. 三十七度

    joe你好,我是三十七度,我的博客域名更新了,麻烦您更新一下友情链接,实在抱歉。
    网站名称:三十七度网站数据分析
    网站域名:http://www.37duer.com/
    万分感谢……
    由于留言板无法留言,所以只能在这里留言,十分抱歉。如果有必要请删除此留言。
    谢谢

    回复
  11. joegh 文章作者

    @三十七度: 友链域名前几天已经更新过了,评论忘回复了。
    另外你说的哪里的留言板没法留言?博客没有专门设置留言板,可以直接在文章下面评论,只要不是涉及推广和一些无价值的评论都会显示出来的,当然也欢迎加我的Gtalk一起交流 :)

    回复
  12. Pingback 引用通告: 时间因素对于数据分析的影响 — SEM KNOWLEDGE BASE|搜索营销智库

  13. Pingback 引用通告: 网站数据分析不得不考虑的时间因素 | 内容采集

joegh 进行回复 取消回复

电子邮件地址不会被公开。 必填项已用 * 标注

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>