项目背景
微信小游戏最近很火,相信大家都在不那么重要的群里面(重要的群,例如老板在的群,估计你也不敢转发),看到了各种小游戏的刷屏分享,如下图所示:
微信团队马上意识到这是一件非常伤用户体验的事情,马上采取行动,对分享能力进行限制。
作为游戏的开发运营者,少了诱导分享这个拉新的好功能,收入肯定会收到巨大的影响。作为一名数据分析师,我们应该怎么去分析这个影响呢?下面我们使用一个详细的案例来演示一下,如何分析新用户变少,导致收入减少。
收集数据
要分析新用户变少,导致收入减少,那么必须收集到以下的数据:
1、DAU(Daily Active User,每天至少来访 1 次的用户数据),数据的列包括登陆日期、用户ID;
2、DPU(Daily Payment User,每天至少消费 1 日元的用户数据),数据的列包括消费日期、用户ID、消费额;
3、Registered(用户注册数据),数据的列包括注册日期,用户ID。
收集到的数据,如下图所示:
收集完数据后,我们把数据导入到内存中,使用的代码如下所示:
浏览一下数据,每份数据前十行的数据,如下图所示:
这份数据蛮大的,可以通过 RStudio,看到数据的规模如下图所示:
把数据导入内存以后,直接使用这份数据,还不能直接用于数据分析,接下来,我们对这份数据进行处理。
数据处理
我需要把这三份数据,处理为一个数据框,方便进行聚合统计。这里就需要用到关联操作,把所有的列都汇总在一个数据框中。代码和数据如下所示:
可以看到,因为每个登陆用户,不一定当天都会付费,因此,付费列会有很多NA空值(毕竟,人民币玩家只是占总用户的一小部分)。这个是正常合理存在的空值,我们把它都转为0即可。
我们一般不按照天来对数据进行分析,这里我增加一列,把日期的年份和月份提取出来,方便后面按月对数据进行汇总,用到的代码,如下所示:
处理后,处理完成后,最终的数据如下图所示:
数据分析
首先来求解出,每人每月消费的总额,做第一级的汇总。
接着,作出一个标记位,用于标注该用户的消费月份,是否在注册月份。
到了这里,我们就可以根据数据的月份以及用户的类型这两个字段,进行分组,然后对消费金额进行求和的统计。
从分组统计的结果我们可以看到,老用户的消费总额,其实并没有变化,但是新用户的消费总额,有了很大的变化,从49837,变成了29199了。
数据可视化
使用干巴巴的数字,不如使用图表来展现数据。下面,我们使用柱形图,来对上面的结果进行数据可视化,代码和图形如下所示。
好,到这里,我们的整个分析过程就完成了,是不是觉得非常有意思?马上下载源码来练习一下吧。
领取专属 10元无门槛券
私享最新 技术干货