数据集来自DataFrog,在此做个学习记录
理解数据:
数据集共有828934条数据,109个字段,主要对其中10个字段进行分析,如下:
user_id :玩家唯一ID
pay_price :付费金额
register_time :玩家注册时间
avg_online_minutes :在线时长
pvp_battle_count :玩家与玩家之间的对战次数
pvp_lanch_count :主动发起pvp次数
pvp_win_count : pvp胜利次数
pve_battle_count :玩家与电脑之间的对战次数
pve_lanch_count :主动发起pve次数
pve_win_count :pve胜利次数
主要从四个方面进行分析:
分析过程
1、新增玩家分析
1.1 新增玩家数量
#新增用户数量 SELECT COUNT( DISTINCT user_id) as 新增玩家数量 from tap_fun
1.2 新增付费玩家数量
#付费用户数量 SELECT COUNT( DISTINCT user_id) as 付费玩家数量 from tap_fun where pay_price > 0
可以看到付费玩家并不多,看看付费玩家占比
1.3 付费玩家占比
#付费用户占比 SELECT (SELECT COUNT( DISTINCT user_id) as 付费玩家数量 from tap_fun where pay_price > 0) / (SELECT COUNT( DISTINCT user_id) as 新增玩家数量 from tap_fun) as 付费玩家占比
通过上述查询可知,新增付费玩家数量是828934人,其中付费玩家有19549人,付费玩家人数占总注册人数的2.36%,付费人数占比不高
1.4 每日新增玩家数量
#每日新增玩家 SELECT DATE(register_time) as 日期, COUNT(DISTINCT user_id) as 当日新增玩家 from tap_fun GROUP BY 日期
#每日新增付费玩家 SELECT DATE(register_time) as 日期, COUNT(DISTINCT user_id) as 当日新增付费玩家 from tap_fun WHERE pay_price > 0 GROUP BY 日期
对每日新增玩家数量和每日新增付费玩家数量做可视化,观察变化趋势
观察可知:
每日新增玩家在3月10日有一次高峰增长,在3月13日有一次小高峰增长,应该是因为这两次时间点举办了游戏相关活动,但是活动过后,后续新玩家增长量并没有明显提升,因此这两次活动并没有给这款游戏带来实质性的帮助。所以活动还需要一定的推广力度以及保持一定时间长度,时间短的话,玩家对于游戏还不够了解,应该给玩家充分了解游戏的时间,才有可能持续提高游戏的热度
2、玩家活跃度分析
2.1 全部玩家平均在线时长
SELECT AVG(avg_online_minutes) as 全部玩家平均在线时长 FROM tap_fun
SELECT AVG(avg_online_minutes) as 付费玩家平均在线时长 FROM tap_fun WHERE pay_price > 0
通过对比发现,付费玩家平均在线时长远大于全部玩家平均在线时长,活跃度要高很多。
使用箱线图分析总体特征,求最大值、最小值、中位数和上下四分位数
#箱线图看总体特征,求出最大值、最小值、中位数、上下四分位数 SELECT ROUND(COUNT(DISTINCT user_id)/4) as 下四分位数, ROUND(COUNT(DISTINCT user_id)/2) as 中位数, ROUND(COUNT(DISTINCT user_id)/4*3) as 上四分位数 FROM tap_fun
#全部玩家在线游戏时长分布 SELECT MIN(avg_online_minutes) as 最小值, (SELECT avg_online_minutes FROM tap_fun_test ORDER BY avg_online_minutes LIMIT 207233,1) as 下四分位数, (SELECT avg_online_minutes FROM tap_fun_test ORDER BY avg_online_minutes LIMIT 414466,1) as 中位数, (SELECT avg_online_minutes FROM tap_fun_test ORDER BY avg_online_minutes LIMIT 621700,1) as 上四分位数, MAX(avg_online_minutes) as 最大值 FROM tap_fun
#付费玩家在线时长的四分位数、中位数、上四分位数 SELECT ROUND(COUNT(DISTINCT user_id)/4) as 下四分位数, ROUND(COUNT(DISTINCT user_id)/2) as 中位数, ROUND(COUNT(DISTINCT user_id)/4*3) as 上四分位数 FROM tap_fun WHERE pay_price > 0
#付费玩家在线时长分布 SELECT MIN(avg_online_minutes) as 最小值, (SELECT avg_online_minutes FROM tap_fun_test WHERE pay_price > 0 ORDER BY avg_online_minutes LIMIT 4886,1) as 下四分位数, (SELECT avg_online_minutes FROM tap_fun_test WHERE pay_price > 0 ORDER BY avg_online_minutes LIMIT 9774,1) as 中位数, (SELECT avg_online_minutes FROM tap_fun_test WHERE pay_price > 0 ORDER BY avg_online_minutes LIMIT 14661,1) as 上四分位数, MAX(avg_online_minutes) as 最大值 FROM tap_fun WHERE pay_price > 0
做箱线图比较:
根据以上数据和图标可得出以下结论:
1、全部玩家的在线时长箱线图向下压缩的很厉害,全部玩家在线时长上四分位数为1,75%的玩家平均在线时长只有大约1分钟,可见玩家流失的情况还是比较严重的。
2、付费用户的在线时长箱线图中,下四分位数为3,中位数为85,上四分位数191,也就是说,付费用户中,75%以上的用户在线时长都超过了30分钟
3、玩家付费情况分析
关键指标:
AU(Active Users):活跃用户,这里定为游戏时间长达15分钟的为活跃用户
PU(Paying User):付费用户
APA(Active Payment Account):活跃付费用户数
ARPU(Average Revenue Per User):平均每个活跃用户的收入,即可通过总收入/APA计算得出
ARPPU(Average Revenue Per Paying User):平均每个活跃付费用户收入,可通过总收入/APA计算得出
PUR(Pay User Rate):付费比率,可通过APA/AU计算得出
3.1 每个活跃玩家的收入
SELECT COUNT(DISTINCT user_id) as AU, (SELECT SUM(pay_price) FROM tap_fun) as 总收入, (SELECT SUM(pay_price) FROM tap_fun)/COUNT(DISTINCT user_id) as ARPU FROM tap_fun WHERE avg_online_minutes >= 15
3.2 每个付费活跃玩家的收入
#每个活跃付费玩家收入 SELECT COUNT(DISTINCT user_id) as APA, (SELECT SUM(pay_price) FROM tap_fun) as 总收入, (SELECT SUM(pay_price) FROM tap_fun)/COUNT(DISTINCT user_id) as ARPPU FROM tap_fun WHERE avg_online_minutes >= 15 AND pay_price > 0
3.3 付费率
#付费率PUR=APA/AU SELECT COUNT(DISTINCT user_id) as APA, (SELECT COUNT(DISTINCT user_id)FROM tap_fun WHERE avg_online_minutes >= 15) as AU, COUNT(DISTINCT user_id) / (SELECT COUNT(DISTINCT user_id) FROM tap_fun WHERE avg_online_minutes >= 15) as PUR FROM tap_fun WHERE avg_online_minutes >= 15 AND pay_price > 0
对查询出的数据做可视化:
从上述查询分析可发现,该游戏人均付费率ARPU很低,说明游戏的收入较差,但对比ARPU,平均每个付费用户收入ARPPU很高,是ARPU的6倍多,那就说明收费玩家的付费能力很强,针对这一点,可以做一些付费功能调整和优化,甚至专属大R玩家,让大R玩的更开心。
付费率有16.9%,不高也不算太差,可以考虑开展一个首充活动,比如:充1元可获得价值60元的大礼包,来提高游戏的付费率。付费率高,一样可以得到渠道青睐,获得更多推荐展示机会,间接提高游戏的热度。
4、玩家游戏习惯分析
指标
PVP(Player VS Player):玩家之间的游戏对决,就是玩家与对立阵营,派别之间的玩家发生的战斗。通过完成击杀其他玩家获得荣誉,装备道具等。
PVE(Player VS Environment):玩家与电脑之间的对决,即打怪、打副本等
#AU玩家的PVP情况 SELECT AVG(pvp_battle_count) as 平均PVP次数, SUM(pvp_lanch_count) / SUM(pvp_battle_count) as 主动发起PVP的概率, SUM(pvp_win_count) / SUM(pvp_battle_count) as PVP胜利的概率 FROM tap_fun
WHERE avg_online_minutes >= 15
#APA玩家的PVP情况 SELECT AVG(pvp_battle_count) as 平均PVP次数, SUM(pvp_lanch_count) / SUM(pvp_battle_count) as 主动发起PVP的概率, SUM(pvp_win_count) / SUM(pvp_battle_count) as PVP胜利的概率 FROM tap_fun
WHERE avg_online_minutes >= 15 and pay_price > 0
SELECT AVG(pve_battle_count) as 平均PVE次数, SUM(pve_lanch_count) / SUM(pve_battle_count) as 主动发起PVE的概率, SUM(pve_win_count) / SUM(pve_battle_count) as PVE胜利的概率 FROM tap_fun
WHERE avg_online_minutes >= 15
SELECT AVG(pve_battle_count) as 平均PVE次数, SUM(pve_lanch_count) / SUM(pve_battle_count) as 主动发起PVE的概率, SUM(pve_win_count) / SUM(pve_battle_count) as PVE胜利的概率 FROM tap_fun
WHERE avg_online_minutes >= 15 and pay_price > 0
将以上数据可视化:
从上图可以看出,APA玩家的平均PVE和PVP次数都接近是AU玩家两倍,显然APA玩家更愿意花费更多的时间在这个游戏上
在PVE活动中,APA玩家主动发起进攻的概率和胜利的概率与AU玩家基本持平,其中主动发起PVE的概率非常高,可见游戏玩家还是比较熟悉游戏规则,基本上能主动刷副本打怪获取资源或者等级的提升。另外游戏的PVE难度也不高,玩家的PVE胜率高达90%,可见游戏体验较为友好
结论
原文:https://www.cnblogs.com/Cles/p/13751158.html