如何合理的定义用户流失——流失多少天算流失

关于流失用户,我们首先想到的是选择怎样的时间跨度才能准确定义玩家为一个流失用户。通常在游戏中,会有对流失玩家召回活动,假如流失玩家的流失期限定义太短,比如3天未登录游戏,即算流失;这样虽然能够覆盖更多的真实流失玩家,但同时也将许多非真实流失玩家,在召回活动中大量发放奖励,不仅浪费资源,也破坏了一定的游戏平衡性;假如流失玩家的流失期限定义太长,比如60天未登录游戏,即算流失,这样覆盖全部真实流失玩家的比例较低,召回活动显得没有太大的意义;所以玩家流失多久才能定义为流失玩家至关重要。在这里先介绍一下流失用户回归率及拐点理论。

参考链接:https://zhuanlan.zhihu.com/p/83703833

流失用户回归率

流失用户回归主要指玩家流失之后的用户再次登陆游戏,根据回归用户数可以计算得到用户回访率,即:流失用户回归率= 回归用户数 ÷ 流失用户数 × 100%
流失用户回归率在流失用户定义合理的情形下,通常数值比较低,移动游戏的用户回归率通常在5%以下。用户流失的流失期限长度与流失用户回归率通常成反比,即随着流失期增大,流失用户回归率递减,并逐渐趋近于0。

拐点理论

X轴上数值的增加会带来Y轴数值大幅增益(减益),直到超过某个点之后,当X增加时Y的数据增益(减益)大幅下降,即经济学里面的边际收益的大幅减少,那个点就是图表中的“拐点”。

假设我们以一天为单位定义用户流失期限,及用户某日登陆游戏,在此后一天内没有继续登陆,我们就认为它已流失;再假设以三天为单位,那么在用户某日登陆游戏,在此之后三天内没有继续登陆游戏,我们就认为它已流失。以此类推,我们也可以以周为单位。下图是以3天为单位的流失用户回归率曲线,我们可以看到,当流失期限超过15天的时候,曲线逐渐平滑,我们可以认为当一个玩家连续15天没有登陆游戏,可以判断它已经流失;
在这里插入图片描述
《游戏A》用户流失期限确定

我们可以将上述方法应用到《游戏A》中,来确定该游戏的用户流失期限。随机地选取三个时间点的登陆用户,观察他们连续1天不登陆,连续2天不登录,连续3天不登录直至连续30天不登录的流失回归率数据。在这里我们选取5月1日、6月1日、7月1日的登陆用户,分别计算他们在不同流失天数的流失回归率,具体数据见下表。
在这里插入图片描述
下面三张图分别为三个随机日期登陆用户的流失回归率曲线,从下面三张图中我们可以看到5月1日登陆用户的曲线拐点发生在21天, 6月1日登陆用户的曲线拐点发生在18天,7月1日登陆用户的曲线拐点发生在19天,因此我们可以认为3周定义为该游戏玩家的流失周期是合理的,即玩家3周不登录游戏,即认定为流失。
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

那我们不禁要问,是不是所有的游戏的玩家流失周期都是类似的呢?下面我们再看一下另一款动作卡牌游戏《游戏B》。同样我们随机选取3个时间点的登陆玩家,在这里我们选取7月15日、7月25日、8月5日登陆玩家,观察他们连续1天、连续2天直至连续30天不登录的流失回归率,见下表。
在这里插入图片描述
下面三张图为《游戏B》三个时间点的流失用户回归率曲线图,从图中可以看到,三个时间点的拐点分别产生在9天、10天、10天,我们可以认为该游戏的用户流失周期为10天,即玩家10天不登录游戏就算作流失。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
从以上两款游戏的流失回归率拐点我们可以看到,不同游戏的玩家流失期限还是有很大差异的。该方法可以从游戏发行开始持续跟踪玩家的流失期限,随着时间的推移,在游戏不同的生命周期阶段,玩家的流失回归率也可能存在一定差异。因此我们在分析用户流失多少天算流失时,要根据实际情况,集体问题具体分析。

解读原文中具体日期的n日流失回归率的问题

在这里插入图片描述

  • 如上图,6月1日的1日流失率,即从6月1日开始往后数1日(即第二日6月2日),我们得知,在A、B、C三个用户中,只有A、B两个用户流失。我们开始讨论流失的回归,即在具体日期往后退n日的后1天,即月3日,在已流失的A和B用户中,A用户回归,即6月1日的1日流失回归率=1/2*100%=50%
  • 同理:6月1日的2日流失率,即从6月1日开始往后数2日,即6月3日(中间的6月2日不管发生了什么都和后续计算的流失回归无关);在6月3日,只有B用户流失。讨论用户的流失回归问题,即在6月3日的基础上再往后退一日,即6月4日(只看6月3日的流失用户即B用户,而无需考虑A和C用户)B用户回归,即6月1日的2日回归率=1/1*100%=100%
  • 6月3日的1日流失率,即从6月3日开始往后数1日(即第二日6月4日),我们得知,在A、B、C三个用户中,只有A、C两个用户流失。我们开始讨论流失的回归,即在具体日期往后退n日的后1天,即6月5日,在已流失的A和C用户中,C用户回归,即6月3日的1日流失回归率=1/2*100%=50%

大家可以根据这个方法计算一下6月3日的2日流失率为多少?评论区告诉我吧!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/569100.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ng-bootstrap 组件集中 tabset 组件的实现分析

ng-bootstrap: tabset 本文介绍了 ng-bootstrap 项目中&#xff0c;tabset 的实现分析。 使用方式 <ngb-tabset> 作为容器元素&#xff0c;其中的每个页签以一个 <ngb-tab> 元素定义&#xff0c;在 <ngb-tabset> 中包含若干个 <ngb-tab> 子元素。 在 &…

如何使jupyter notebook自动补全代码和生成不同级别的标题

在我们使用jupyter notenook去编写程序时&#xff0c;在这个交互式的笔记本上使用python语言去进行数据分析&#xff0c;十分方便。但当分析的内容有点多时&#xff0c;我们能清楚的看清该步内容处于第几级目录下&#xff0c;使分析的逻辑清晰明了。因此接下来&#xff0c;我们…

K近邻法(KNN)原理小结

K近邻法(k-nearest neighbors,KNN)是一种很基本的机器学习方法了&#xff0c;在我们平常的生活中也会不自主的应用。比如&#xff0c;我们判断一个人的人品&#xff0c;只需要观察他来往最密切的几个人的人品好坏就可以得出了。这里就运用了KNN的思想。KNN方法既可以做分类&…

SQL语法大全,快码住收藏!!!

基础 1、创建数据库&#xff1a;CREATE DATABASE database-name 2、删除数据库&#xff1a;drop database dbname 3、备份&#xff1a;sql server— 创建 备份数据的 device USE master EXEC sp_addumpdevice ‘disk’, ‘testBack’, ‘c:\mssql7backup\MyNwind_1.dat’— 开…

python 解决print数组/矩阵无法完整输出的问题

问题描述&#xff1a; 当数组/矩阵过大则只会显示其中一部分&#xff0c;中间则会自动用省略号代替&#xff0c;而我们想要去查看数组/矩阵的具体内容时&#xff0c;则需要将省略号代替的部分展示出来&#xff1a; 解决方法&#xff1a; 直接在import numpy 加上下面一句代码即…

SpringBoot学习笔记2

九&#xff1a;创建父工程 注意&#xff1a;打包方式选择为pom 将创建SpringBoot常用的依赖和插件放在父工程的pom.xml,如下&#xff1a; 1 <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance" …

Windows下更改默认的python环境

Windows下更改默认的python环境1.查找python所在的路径2.高级系统设置3.编辑path变量1.查找python所在的路径 打开电脑中的cmd&#xff0c;输入where python&#xff0c;得到电脑中所有python环境的路径 2.高级系统设置 此电脑——>属性——>高级系统设置——>环境…

杭电2051

此题思路参照杭电2031&#xff0c;相比之下此题更简单了&#xff01;呵呵&#xff01;&#xff08;知道注意求几进制就用10进制数除以几把所求的余数存到一个数组里就行了&#xff01;同时也要记下整除后的结果&#xff0c;用整除后的结果接着求余&#xff01;&#xff01; 直到…

SilverLight Test

一个示例程序,来自 http://silverlight.live.com/ 转载于:https://www.cnblogs.com/Glen/archive/2007/08/21/863763.html

浅谈数据库三大范式的理解

首先声明一下&#xff0c;我的这个回答是个人工作总结&#xff0c;不适合考试答题昂。 欢迎关注我的博客。 前言&#xff1a;数据库设计其实不仅仅限制于三个范式&#xff0c;往下其实还有很多种&#xff0c;但对于大多数人来说&#xff0c;你又不搞科研&#xff0c;不造飞机大…

理解Silverlight的路径填充规则

这个可以扩展到矢量图中路径的填充规则&#xff0c;因为所有矢量图都采用这个规则来填充封闭路径的内部&#xff0c;在这里只以Silverlight为例。 在网上找了很久关于填充规则的介绍&#xff0c;经过了几天的阅读和自己理解还有亲自尝试&#xff0c;现在终于能说出过所以然来了…

PowerDesigner

PowerDesigner简介   PowerDesigner是Sybase公司的CASE工具集&#xff0c;使用它可以方便地对管理信息系统进行分析设计&#xff0c;它几乎包括了数据库模型设计的全过程。利用PowerDesigner可以制作数据流程图、概念数据模型、物理数据模型&#xff0c;可以生成多种客户端开…

call,apply,bind的区别

1转载于:https://www.cnblogs.com/YangJonathan/p/11223641.html

Fotolog对memcached的应用

Fotolog在21台server上部署了51个memcached实例&#xff0c;使用了175G&#xff0c;剩余254G。他们对待缓存的策略是&#xff1a;缓存所有在查询、获取和计算上慢的东西。 几种应用类型: Non-Deterministic Cache&#xff1a; 最常用的存储需要read的数据。平均每个memcached实…

Windows Azure 将正式更名为 Microsoft Azure

微软的公共云平台在2014年4月3日正式从Windows Azure 更名为Microsoft Azure。 windows azure是二级产品名&#xff0c;microsoft azure是一级产品名&#xff0c;和microsoft office、microsoft windows同级别。相当于是把云从windows系里剥离出来。所以微软现在的产品线应该是…

引入外部js如何通知页面其编码格式

快来java1234 吧 js中如何设置编码格式 <script type"text/javascript" src"xxx" charset"utf-8"></script> 只能使用在引入外部js文件时&#xff0c;可以声明编码格式&#xff0c;对行内脚本无效&#xff1b; 转载于:https://www.c…

java——Runtime

一、Runtime类&#xff1a;代表着Java程序的运行时环境&#xff1b; 每个Java程序都有一个Runtime实例&#xff0c;该类会被自动创建&#xff1b; 我们可以通过Runtime.getRuntime() 方法来获取当前程序的Runtime实例&#xff1b; 二、核心方法&#xff1a; &#xff08;1&…

基础测试

public class Test1 { /** * 第1题&#xff1a;从键盘接受一个数字&#xff0c;列出该数字的中文表示格式&#xff0c; 例如&#xff1a;键盘输入123&#xff0c;打印出一二三&#xff1b;键盘输入3103&#xff0c;打印出三一零三。 * * param args */ …

Jquery复习(七)之尺寸

jQuery 尺寸 方法 jQuery 提供多个处理尺寸的重要方法&#xff1a; width() height() innerWidth() innerHeight() outerWidth() outerHeight() jQuery 尺寸 jQuery width() 和 height() 方法 width() 方法设置或返回元素的宽度&#xff08;不包括内边距、边框或外边距&am…

C++学习_第1章_从C到C++

一、引用的概念和应用 1.引用的概念 下面写法定义了一个引用&#xff0c;并将其初始化为引用某个变量。类型名 & 引用名 某变量名;int n 4;int & r n; // r引用了n&#xff0c;r的类型是 int & 某个变量的引用&#xff0c;等价于这个变量&#xff0c;相当于该变…