用户数据化运营是互联网运营工作必备工作之一,且产品的生存必须有用户。而会员价价值度是用来评估用户的价值情况,是区分会员价值的重要性模型和参考依据,也是衡量不同营销效果的关键指标之一,我们可以通过复购率、消费频率、最近一次购买时间、最近一次购买金额等方面分析会员价值度。

常用的价值度模型是RFM。RFM模型是根据会员最近一次购买时间R(Rencency)、购买频率F(Frequency)、购买金额M(Monetary)计算得出RFM的值,可以通过K-MEANS聚类或者的RFM价值模型对客户进行分类。

K-means聚类原理

K-means是一个聚类算法用来将n 个点分成 k 个集群。

k-means算法为基于距离的非层次聚类算法,采用距离作为相似性的评价指标,距离越近,则认为两个样本的相似性越大。python建模采用sk-learn 机器学习库,其K-means算法采用的是欧几里得距离。算法过程简单归纳一下,就不上详细的数学公式了:

step 1 选取K个对象作为初始的聚类中心,k需要事先指点,因此聚类结果具有一定的随机性

step 2 分别计算每个样本到聚类中心的距离,将样本分配到距离最近的聚类中。

step 3 在所有样本都分配到某个聚类后,重新计算K各聚类的中心

step 4 与前一次计算的K个聚类中心比较,如果聚类中心发生变化,就转到 step2,用新的聚类中心分类样本,loop。

step 5 当聚类中心不发生变化,或者达到最大迭代次数时,停止并输出聚类结果。

最后的结果是点和质心之间的均方差达到最小。

案例详解

导入数据,并设置索引列

日期缺失2条数据,订单金额缺失8条数据,缺少的数据极少量,可直接删除

订单金额最小值0.5.最大值30999,最小值异常,经询问运营同事,原因是客户用优惠券购买的订单,1元以下的订单金额均无任何意义。可直接舍弃

二、RMF分值计算

”R“是最近一次登陆时间离获取数据日期2017年8月22日之间的天数

”F“是发微博的条数

”M“是关注其他用户的数量

R M F的原始变量值

将R_score','F_score','M_score'列入number数据框,np.array将R、F、M的值转换位矩阵(3,86125),transpose为转置功能,等价与T。

np.array(number_list).transpose()=np.array(number_list).T

查看number数据的描述统计分析,可看出m_score的标准差较大,很可能由较多异常值。通过画箱线图进一步确认及剔除异常值。

通过箱线图可看出m_score的离群值较多和较大,可去除>20000的数据。

通过相关性系数表,得知R、F、M均为弱相关。

机器学习模型一:基于K-Mean聚类模型分析法

1、确认分类的K值

分析各簇中心点与样本的距离

图中可看出,K=3时,出现明显的转折点,因此,K-MEAN聚类的K值=3。

2、机器学习,得出数据集和分组明细

对于连续型数据,在机器学习之前,先对number数据进行Z-SCORE标准化处理。

从sklearn.cluster模块加载k-means聚类模型进行机器学习

输出各个特征的的聚类中心和各个类别的样本数目:

将分类的数据集并入原始数据框number中

3、K-means聚类结果分析

通过K-Means算法将样本分为三个cluster后,现在分别分析这三个客户群体的样本属性,挖掘其中的价值,作出各客户群体特征的概率密度函数:

结论:

客户类别0的特点:

消费时间间隔200到350天;消费次数集中在1次,消费金额在0-500以下

客户类别1的特点:

消费时间间隔0-150,消费次数集中在2-4次,消费金额在0~5000元。

客户类别2的特点:

消费时间间隔0-150天;消费次数集中在1-2次,消费金额在500元以下。

对比分析后,得到类别1里面的客户消费时间间隔短,消费次数多,而且金额较大,属于高价值人群。类别2里面的客户群消费次数、消费时间间隔、消费金额处于中等水平,属于一般客户。类别0里面的客户,消费间隔时间长,次数少,金额也不是特别高,属于价值较低的客户。

机器学习模型二:基于RFM客户价值预测模型

RFM模型分析步骤:

1 、设定分析数据的截止时间节点(如2018-4-1),用来做基于该时间节点的数据选取和计算。

2 、在用户数据库中,以步骤1设定的时间节点为界限向前推一固定周期(如一周年、一个月等),选择截取每个会员的会员ID、订单时间、订单金额的原始数据集。

3 、根据获取到的原始数据集,分别计算 最近一次购买时间R(Rencency):各个会员最近的订单时间与截止时间节点的距离; 购买频率F(Frequency):以会员ID为区分,分别统计各会员ID的订单数量; 购买金额M(Monetary):将用户多个订单的订单金额求和。

4、 对R、F、M值进行分区。对于F和M变量来讲,值越大代表购买频率越高、订单金额越 高;但对R来讲值越小代表离截止时间节点越近,因此值越好。对R、F、M分别使用五分位(也可以分成其他分位,如三分位)法做数据分区,需要注意的是,对于R来讲需要倒过来划分,离截止时间越近的值划分越大。

5、 将三个值组合或相加得到总的RFM得分。这里有两种得分方式,一种是直接将三个值拼接到一起,例如RFM得分为213、131、122;一种是直接将三个值相加求得一个新的汇总值,例如RFM得分为7、6、9。在得到不同会员的RFM的之后,根据步骤5产生的两种结果有不用的应用思路:

应用思路1:基于三个维度值做用户群体划分和解读,对用户的价值度做分析。例如得分为213的会员往往购买频率较低,针对购买频率低的客户定期发送促销活动邮件;针对得分为131的会员虽然购买频率高但是订单金额低等,这些客户往往具有较高的购买粘性,可以考虑通过关联或搭配销售的方式提升订单金额。 2:基于RFM的汇总得分评估所有会员的价值度价值,并可以做价值度排名;同时,该得分还可以作为输入维度跟其他维度一起作为其他数据分析和挖掘模型的输入变量,为分析建模提供基础。

计算RFM得分:

导出excel,数据透视表,并画出图形

结论

公司的会员中 ,重要客户和一般客户基本55开,重要客户占50%以上,说明客户的日常维护做到位,一般挽留客户仍然较多,次部分客户可以在大型的促销节日进行挽留。针对不同客户分类群,采取差异化的营销策略进行醋活。

kmeans及模型评估指标_基于K-MEANS聚类模型和RFM价值分类模型的订单交易用户价值分析...相关推荐

  1. kmeans及模型评估指标_机器学习模型评估指标总结

    常用机器学习算法包括分类.回归.聚类等几大类型,以下针对不同模型总结其评估指标 一.分类模型 常见的分类模型包括:逻辑回归.决策树.朴素贝叶斯.SVM.神经网络等,模型评估指标包括以下几种: (1)二 ...

  2. kmeans及模型评估指标_聚类分析的过程和两个常用的聚类算法

    聚类分析过程 一般聚类分析的数据源是需要相对干净的,即需要做统一的特征清洗.特征变换过程,即空值.非法值.异常值.类别变量等的处理.主要过程如下: 数据采集:我们可以认为是统一的ETL过程,这里涉及埋 ...

  3. kmeans及模型评估指标_模型评估常用指标

    一. ROC曲线和AUC值 在逻辑回归.随机森林.GBDT.XGBoost这些模型中,模型训练完成之后,每个样本都会获得对应的两个概率值,一个是样本为正样本的概率,一个是样本为负样本的概率.把每个样本 ...

  4. kmeans及模型评估指标_使用sklearn评估器构建聚类模型

    原标题:使用sklearn评估器构建聚类模型 作者:徐瑶佳 来源:人工智能学习圈 工作内容: 聚类算法是在没有给定划分类别的情况下,根据数据样本的相似度进行样本分组的一种算法.聚类算法过程是无监督的, ...

  5. 支撑阻力指标_使用k表示聚类以创建支撑和阻力

    支撑阻力指标 Note from Towards Data Science's editors: While we allow independent authors to publish artic ...

  6. python图像分割_基于K均值聚类算法的Python图像分割

    1个K均值算法 实际上,K-means算法是一种非常简单的算法,与算法思想或特定实现无关. 通过以一定方式测量样本之间的相似度,并迭代更新聚类中心,它属于无监督分类. 当聚类中心不再移动或移动差异小于 ...

  7. kmeans及模型评估指标_如何评估聚类模型?兰德指数、轮廓系数、Calinski Harabaz指数...

    我们可以通过对一系列曲目进行聚类来创建歌曲的自动播放列表,我们可以展示如何自动创建相似歌曲的子组.通过我们现有的歌曲知识,我们能够验证该聚类练习的结果. 但是,如果我们对数据没有这种先验知识怎么办?如 ...

  8. 模型评估指标_精准率、召回率、F1-score、ROC曲线、AUC曲线

    一.分类结果混淆矩阵 1.T.F.P.N辨析 P(Positive).N(Negative)针对的是预测值的结果. P表示对样本的预测结果为正例, N表示对样本的预测结果为反例. T(True).F( ...

  9. 模型评估指标 -1- 基础篇 -FPR/TPR/F1/ROC/AUC

    导语:本文是模型评估指标系列的第一篇,将详细地介绍分类模型中基于混淆矩阵衍生出来的各个指标的计算公式,如准确率,精确率,召回率,FPR,TPR,ROC曲线的绘制逻辑,AUC的计算公式等.本文首发在个人 ...

最新文章

  1. matlab 信号的原子产生,MATLAB随机产生原子结构代码
  2. ashx文件和HttpHandler
  3. python单例模式基于__new__方法实现的单例模式(推荐使用,方便)
  4. win7如何打开防火墙某个端口的tcp连接
  5. 软件项目管理0706:工匠精神
  6. java catch getm_Java------异常处理机制
  7. Vue.js-Day03-PM【组件通信(安装Vetur插件、父子组件通信、子父组件通信)、项目发送与启动(项目发给别人、启动别人的项目)】
  8. try catch线程问题???
  9. mysql中的联结_MySQL的联结(Join)语法
  10. 永远不要因为这个工作不好而辞职、、、、
  11. 互联网公司Java后台开发面试经历
  12. 多任务学习 Multi-task learning
  13. 使用Flash地图控件AnyMap创建Self Drilldown Maps
  14. 【推荐系统】推荐算法系列之DSSM双塔模型:Deep Structured Semantic Models for Web Search using Clickthrough Data
  15. PPT文件无法打开处理
  16. MWC就快到来!5G、物联网应用以及折迭手机为本次焦点
  17. Linux文件目录管理、文件内容查看以及文件内容查询命令(详细命令)
  18. 小程序支付后台实现(服务商)
  19. 浮点数比大小(C语言版)
  20. Description: A component required a bean of type ‘com.jia.dao.UserDao‘ that

热门文章

  1. 时海君:apache第一讲-commons cli
  2. 堆栈平衡:估计这是最详细的讲解堆栈平衡的了 vc++6.0
  3. java中的POJO简介
  4. 如何关闭Spotlight
  5. 网络跑满 限制可保留宽带 基于策略的Qos
  6. CUM Sphinx的安装及使用
  7. Django 时间查询、avg、acount、cum、F查询、Q查询
  8. 在敏捷开发,如何评估开发任务的工时更合理?
  9. “互联网+”大环境下,企业如何做足涉电准备?
  10. 团队作业2---需求分析原型设计