DAU预测
转自: http://www.kaixin001.com/repaste/80488684_6910412734.html
我们知道在所有的游戏运营数据中,最终要的两个数据莫过于DAU、ARPU了。
|-DAU代表每天有多少活跃用户。
|-ARPU代表平均每个活跃用户会花多少钱。
这两个数据指标共同构成了产品每天的收入。
今天重点讲一下关于DAU这个关键数据的预测,以及相关数据指标的制定:
在展开细节之前,我先说几个与DAU息息相关的数据指标。
1、新增用户:指每天新注册到游戏中的那一部分用户。
2、次日留存:指每天新注册用户中,有百分之多少的玩家在注册的第二天还会继续登陆游戏。
3、老用户流失率:指除次日留存流失掉的那一部分用户之外,还会额外产生的数据波动。
关于“老用户流失率”这个数据指标可能不太好理解,我这里举例说明。
假设1号DAU为10万,其中包括1万的新用户,再假设次日留存为30%,那么这1万用户第二天还会剩下3000。
如果2号的新增也为1万,那么理论上2号的DAU应该为10.3万。
但是因为有一些老用户的数据发生了变化。
情况1:如果在原有的9万(10万DAU-1万新增)用户基础上,又流失了1万。
那么2号的实际数据应该是10.3万-1万,即9.3万。
情况2:如果在原有的9万用户基础上,从历史流失用户中召回了1万。
那么2号的实际数据应该是10.3万+1万,即11.3万。
情况3:如果在原有的9万用户基础上,流失了5000,但是从历史流失用户中召回了1万。
那么2号的实际数据应该是10.3万+5000,即10.8万。
因此这个数据有可能是正值也可能是负值。
当为正值时,说明老用户流失>召回;
当为负值时,说明老用户召回>流失
不知道这么解释大家明白了么。
ok,下面开始展开DAU的数据预测。假设我们希望DAU每天以一个固定的比例(增长率)进行增长。
也就是说:
今日DAU = 昨日DAU * (1 + 增长率)
今日DAU = 昨日DAU + 昨日DAU * 增长率
因为:今日DAU = 昨日DAU – 昨日新增 * (1 – 次日留存) + 今日新增 – 老用户流失
=> 昨日DAU – 昨日新增 * (1 – 次日留存) + 今日新增 – 老用户流失 = 昨日DAU + 昨日DAU * 增长率
=> -昨日新增 * (1 – 次日留存) + 今日新增 – 老用户流失 = 昨日DAU * 增长率
=> -昨日新增 + 昨日新增 * 次日留存 + 今日新增 – 老用户流失 = 昨日DAU * 增长率
因为:今日老用户流失 = (昨日DAU – 昨日新增) * 老用户流失率
=> 今日新增 – 昨日新增 + 昨日新增 * 次日留存 – (昨日DAU – 昨日新增) * 老用户流失率 = 昨日DAU * 增长率
=> 今日新增 – 昨日新增 + 昨日新增 * 次日留存 – 昨日DAU * 老用户流失率 – 昨日新增 * 老用户流失率 = 昨日DAU * 增长率
=> 今日新增 – 昨日新增 * (1 – 次日留存 – 老用户流失率) = 昨日DAU * 增长率 + 昨日DAU * 老用户流失率
=> 今日新增 = 昨日DAU * (增长率 + 老用户流失率) + 昨日新增 * (1 – 次日留存 – 老用户流失率)
因此,我们可以测算。
当次日留存、老用户流失率明确时,新增的指标的测算公式:
今日新增 = 昨日DAU * (增长率 + 老用户流失率) + 昨日新增 * (1 – 次日留存 – 老用户流失率)
当新增、老用户流失率明确时,次日留存指标的测算公式:
次日留存 = (昨日DAU * 增长率 + 昨日DAU * 老用户流失率 – 新增 * 日老用户流失率) / 新增
当新增、老用户流失率、次日留存的指标都明确时,DAU的测算公式:
今日DAU = 昨日DAU – 新增 * (1 – 次日留存) + 新增 – (昨日DAU – 新增) * 老用户流失率
参考资料:
DAU预测的更多相关文章
- 【Machine Learning】决策树案例:基于python的商品购买能力预测系统
决策树在商品购买能力预测案例中的算法实现 作者:白宁超 2016年12月24日22:05:42 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本 ...
- BZOJ 2119: 股市的预测 [后缀数组 ST表]
2119: 股市的预测 Time Limit: 10 Sec Memory Limit: 259 MBSubmit: 331 Solved: 153[Submit][Status][Discuss ...
- 【BZOJ-2119】股市的预测 后缀数组
2119: 股市的预测 Time Limit: 10 Sec Memory Limit: 259 MBSubmit: 334 Solved: 154[Submit][Status][Discuss ...
- Google云平台对于2014世界杯半决赛的预测,德国阿根廷胜!
由于本人是个足球迷,前段日子Google利用自己云平台预测世界杯八进四的比赛并取得了75%的正确率的事情让我振动不小.虽然这些年一直听说大数据的预测和看趋势能力如何如何强大,但这次的感受更加震撼,因为 ...
- 【彩票】彩票预测算法(一):离散型马尔可夫链模型C#实现
前言:彩票是一个坑,千万不要往里面跳.任何预测彩票的方法都不可能100%,都只能说比你盲目去买要多那么一些机会而已. 已经3个月没写博客了,因为业余时间一直在研究彩票,发现还是有很多乐趣,偶尔买买,娱 ...
- 白话贝叶斯理论及在足球比赛结果预测中的应用和C#实现
离去年“马尔可夫链进行彩票预测”已经一年了,同时我也计划了一个彩票数据框架的搭建,分析和预测的框架,会在今年逐步发表,拟定了一个目录,大家有什么样的意见和和问题,可以看看,留言我会在后面的文章中逐步改 ...
- scikit-learn一般实例之一:绘制交叉验证预测
本实例展示怎样使用cross_val_predict来可视化预测错误: # coding:utf-8 from pylab import * from sklearn import datasets ...
- 判别或预测方法汇总(判别分析、神经网络、支持向量机SVM等)
%% [Input]:s_train(输入样本数据,行数为样本数,列为维数):s_group(训练样本类别):s_sample(待判别数据)%% [Output]:Cla(预测类别) function ...
- 利用Python【Orange】结合DNA序列进行人种预测
http://blog.csdn.net/jj12345jj198999/article/details/8951120 coursera上 web intelligence and big data ...
随机推荐
- Linux命令执行顺序— ||和&&和; 比较
Linux命令执行顺序— ||和&&和; command1 && command2: &&左边的command1执行成功(返回0表示成功)后,& ...
- 黑马程序员_java基础笔记(13)...类加载器和代理
—————————— ASP.Net+Android+IOS开发..Net培训.期待与您交流! —————————— 1,类加载器.2,代理. 1,类加载器. Java虚拟机中可以安装多个类加载器,系 ...
- SQL数据库数据类型详解
数据类型 类型 描 述 bit 整型 bit 数据类型是整型,其值只能是0.1或空值.这种数据类型用于存储只有两种可能值的数据,如Yes 或No.True 或Fa lse .On 或Off int 整 ...
- Linux shell 脚本小记2
.从文件读取 while read line do echo "line=$line" done < file.txt .将字符串转换为数组,并进行遍历 str=" ...
- HICON泄漏
通常,我们使用的HICON对象只需用DestroyIcon后就不存在内存泄漏了,但是当我们使用GetIconInfo后会发现程序GDI资源存在泄漏,原因是GetIconInfo会产生2个HBITMAP ...
- 使用 IntraWeb (20) - 基本控件之 TIWGrid
TIWGrid 最终通过 Html Table 呈现; 其每个 Cell 都是一个 TIWGridCell 对象, Cell 对象的 Control 属性非常好, 可以非常方便地嵌入其他控件. TIW ...
- 使用 IntraWeb (8) - 系统模板
我们可以自定义系统错误模板, 编辑 IWError.html 放到模板文件夹后, 它将替换默认的模板. {在主页面, 这是要模拟一个系统错误} procedure TIWForm1.IWButton1 ...
- java 虚拟机启动参数 (转)
在Java.J2EE大型应用中,JVM非标准参数的配置直接关系到整个系统的性能. JVM非标准参数指的是JVM底层的一些配置参数,这些参数在一般开发中默认即可,不需要任何配置.但是在生产环境中,为了提 ...
- net自定义安装程序快捷方式
创建快捷方式对于绝大多数 Windows 用户来说都是小菜一碟了,然而,这项工作却为程序员带来不少麻烦..NET 没有提供简便直接的创建快捷方式的方法,那么在 .NET 中我们如何为应用程序创建快捷方 ...
- PL/SQL Developer中调试oracle的存储过程
作者:iamlaosong 唉,真土,曾经用Toad.一直用dbms_output.put_line调试存储过程,仅仅认为不方便,用上PL/SQL Developer后,习惯性的还是用这种方法.人都是 ...