留存率,在数据分析中,我认为是一个比较好用的指标,因为比较稳定,不会很容易受外界因素的干扰,大幅波动。例如活动,推广等。可以用来做用户的分类,做用户规模预测。

我们看到的留存曲线通常是这样的:

这里介绍几种留存率曲线拟合的方法:

1.用excel 拟合:

拟合样本,1日~12日留存率,画好曲线图后,为曲线图添加趋势线,选择对数或者幂函数(通常对数比较多),显示公式和R平方值,R平方值越接近1,说明拟合效果越好。

如下图,蓝色曲线为真实值,拟合的橙色点线和真实值还是有差异,但效果还是不错的。

y=-0.055ln(x)+0.6382, R平方=0.9894

2.SPSS拟合

操作:R1: [1,2,3,...,12], R2 为对应的12个留存率,选择: 分析-回归-曲线估计,因变量=R2,自变量-变量=R1, 模型=对数, 保存:选预测值,残差,预测区间 - 确定 即可。

y=-0.61ln(x)+0.630 , R平方=0.975

3.python拟合:

#coding:utf-8import numpy as np
from scipy.optimize import leastsq
import pylab as pl
import math#定义函数
#y= a*ln(x)+bdef func(x,p):A,B=preturn A*np.log(x)+B#定义残差函数
def residuals(p,y,x):ret=y-func(x,p)return retx3=np.linspace(0,30,1000) #用于画图精度的调节
x0=[1,2,3,4,5,6,7,8,9,10,11,12] #x变量, 在这里2,3,7全部减1
x2=np.array(x0) #向量化x变量
y0=[0.64,0.60,0.58,0.56,0.56,0.55,0.54,0.52,0.52,0.50,0.50,0.50] #y
y2=np.array(y0)#向量化
p0=[0.5,0.5]#取值起始点qs=leastsq(residuals,p0,args=(y2,x2)) #最小二乘法
print qs[0] #为最佳的拟合函数参数
pl.plot(x0,y0,label='Real',color='red') #画出实际图像
pl.plot(x3,func(x3,qs[0]),label='sim',color='blue') #预测图像

如下图:

y=-0.0572ln(x)+0.6428

4.以上几种方式 得出的结果略有差异,不过都是可以接受的。

数据分析:留存率曲线拟合相关推荐

  1. 小白学数据分析--留存率使用的窘境

    小白学数据分析--留存率使用的窘境 随着移动游戏整体的火热,现在看到太多的数据,太多信息,很多时候我们仰慕和钦佩别人的成功,我们总是把这个行业达成所谓共识的一些数据来出来说明问题.因为我们笃信数据是有 ...

  2. 小白学数据分析-----留存率的三个普适原则

    关于留存率的文章,现在很多,以下要说的内容实际上算是对于留存率使用的一个小归纳.这篇文章所要阐述的内容其实早在去年就已经形成了,一直没有足够的时间组织起来,因为我觉得虽然简单,不过影响的范畴和可扩展的 ...

  3. 小白学数据分析-----留存率分析_I[次日留存率突然下降了50%?]

    最近在做留存分析时,遇到了不少的情况,也经常会有人问我,为什么我的游戏突然次日留存率降了一半.如果留存率是单单作为一个简单的指标的话,那对你价值还是蛮有限的,今天就和大家说说一个case,这是不久前解 ...

  4. python二次函数_python数据分析之曲线拟合:二次函数拟合

    引入 在实际项目中,往往有这样的需求:对采集到的数据进行数据处理(曲线拟合),再计算出一些想要的参数,比如峰值/dip值/周期等等. 核心即曲线拟合.不同的曲线形式,就灵活选择不同的拟合函数. 其中一 ...

  5. python数据分析之曲线拟合(1):二次函数拟合

    引入 在实际项目中,往往有这样的需求:对采集到的数据进行数据处理(曲线拟合),再计算出一些想要的参数,比如峰值/dip值/周期等等. 核心即曲线拟合.不同的曲线形式,就灵活选择不同的拟合函数. 其中一 ...

  6. 趋势预测方法(二)其他函数拟合_函数拟合

    其它函数拟合 a基本原理: 给出公式的大致情况,自动去拟合出最优的参数.这里的其它指的是除多项式以外的拟合情况,包括三角函数.对数,以及一些复杂的复合函数. b拟合原理: 总体思路类似于最小二乘法的拟 ...

  7. Matlab基础内容学习大纲

    目录 前言 一.数据 二.文件 三.绘图 3.1 绘图基础 3.2 绘图细节修饰 3.3 各种绘图模式 四.信号处理 五.工具箱 六.提高Matlab办公效率 七.界面交互 八.音频函数 九.其他 前 ...

  8. matlab三角多项式拟合,三角多项式拟合方法及地震数据处理

    撰写目的和基本思路 撰写目的:基于地震数据光滑性较差的特征,以往拘泥于寻找地震数据数字特征等常规的统计分析方法局限性太大.为了反映地震数据统计规律的本质特征,提出三角多项式拟合方法. 基本思路:将所得 ...

  9. MATLAB数据分析(插值运算和曲线拟合)

    MATLAB数据分析(插值运算和曲线拟合) MATLAB数据分析 在数学研究和工程应用中,我们常常需要对某些环节进行反复的测验或测试,以获取更多的数据支持最优决策,但是由于环境条件的限制,我们往往只能 ...

最新文章

  1. C++中最好不要在构造函数和析构函数中调用虚函数!!!
  2. 宏基因组学习交流4群成立
  3. 一文盘点三大顶级Python库(附代码)
  4. LeetCode--495
  5. 计算机二级c语言可以提前交卷吗,软考考试中可以提前交卷吗?计算机软考成绩一般多久公布...
  6. 洛谷 P1208混合牛奶【贪心】
  7. MATLAB常用命令、函数与运算
  8. 4pam调制与解调(matlab实现)
  9. Flask中的session操作
  10. 【JAVA 第四章 流程控制语句】课后习题 二维坐标距离 三角形判断等
  11. delphi 同盘移动文件所用时间测试(文件大小约6,083,545,088 字节)
  12. RSS(Really Simple Syndication)简易信息聚合
  13. 【OpenCV】目标检测
  14. TensorFlow从入门到理解(六):可视化梯度下降
  15. idea 设置内存_IntelliJ IDEA修改内存使得变得流畅
  16. 医疗相关计算机系统,智能医疗信息管理系统
  17. 点云学习笔记1——激光雷达的原理
  18. 【转】什么是Online Learning
  19. 国内坐标转换常用投影EPSG
  20. php和phalcon,PHP_phalcon框架使用指南,初次认识phalcon是在刚学php的时

热门文章

  1. Elastic 与 AWS 和解、英伟达收购 ARM 失败、英特尔加入RISC-V 组织|开源月报 Vol. 03...
  2. COMSOL弱形式解微分方程
  3. CSS鼠标划过背景渐变效果
  4. 这样充满青春活力的微信公众号图文排版,你见过吗?
  5. 简单几步搞定Mac电脑快速返回桌面的操作!
  6. 软件工程导论第三章复习总结附思维导图
  7. [STM32] Stm32f103c8t6+RC522 实现读卡写卡功能(超详细,零基础,小白)
  8. 【程序员股民系列】如何用python, pandas, numpy, matplotlib绘制每日行业成交额图
  9. VR看房:全景图和移动切换的实现
  10. android 带箭头的按钮,用Dialog创建带箭头的对话框