RFM模型介绍

RFM模型的Excel/Python实现

首先计算出用户的在投时长(月),取数日:2016/7/20
R :最近一次投资距取数日天数
F:月均投资次数
M-月均投资金额

Python实现RFM及聚类分析

1)读取数据

#读取文件
import os
import pandas as pd
os.getcwd()  #查看当前文件路径
os.chdir(r'E:\turing\工作\python代码') #更改文件路径为某一文件夹
#读取excel文件
data = pd.read_excel(r'E:\turing\工作\python代码\公开课-案例:客户价值分析\RFM聚类分析【样本数据】.xlsx,index_col = '用户编码')#index_col指定索引列为用户编码一列
data.head() #查看前5行数据

结果如下

#查看样本数
len(data)

数据探索及预处理

data.describe()
data.describe(include = 'all') # include = 'all'把所有的描述性统计结果都显示出来


#确定提数日
from datatime import datatime
ex_data = datatime(2016,7,20)
print(ex_data)#最近一次投资时间距提数日的天数
diff_R = ex_data - data['最近一次投资时间']
diff_R.head()

#获取天数
diff_R[0].days
type(diff_R[0].days)
#将每一个变成int型
R = []
for i in diff_R:R.append(i.days)R[:10]

计算用户在投时长
'''
用户在投时长
1、用户在线时长(天)
2、变成月 = 天/30,向上取整
'''
from math import math
ceil(diff[0].days/30)
#通过for循环获取每一个的时长
diff_months = []
for i in diff_days:diff_months.append(ceil(i.days))diff_months[:10]

分别获取F、M

#F,月均投资次数
F = data['总计投标总次数']/diff_months
F.head()
F.values() #只看F的值# M,月均投资金额
M = data['总计投资总金额']/fidd_months
M[:10]
聚类分析

#选取R、F、M作为聚类分析的指标
from pandas import DataFrame
cdata = DataFrame(R,list(F),list(M)).T #将F、M 转换成list类型,并转置
cdata.head()#制定cdata的索引(index),columns
cdata.index = data.index
cdata.columns = ['R-最近一次投资时间距提数日的天数','F-月均投资次数','M-月均投资金额']

数据标准化
zcdata = (cdata-cdata.mean())/cdata.std()
zcdata.head()

#聚类(已经事先在spss中确定K的个数,不知道K分为几类的前提下,需要确定K的个数)
from sklearn.cluster import KMeans
kmodel = Kmeans(n_clusters = 4,n_jobs = 4,max_iter = 100,random_state = 0)
#max_iter 每次迭代的最大次数,默认值300,random_state随机生成器的种子,和初始化中心有关,n_jobs使用进程的数量,与电脑CPU有关
kmodel.labels_ #每个样本对应的簇类别标签
#统计每个类别的频次
from pandas import Series
Series(kmodel.labels_).value_counts()
#将类别标签赋回原数据
cdata_rst = pd.concat([cdata,Series(kmodel.labels_, index = cdata.index)],axis=1)
cdata.head()

#讲最后一列命名为类别
cdata_rst.columns = list(cdata.columns)+['类别']
cdata_rst.head()

#按照类别统计R、F、M的均值
cdata_rst.groupby(cdata_rst['类别']).mean()

结论

•类别3,R、F、M都比较高,属于重要价值客户,或者超级用户
•类别0:R、F、M都比较低,属于低价值客户
•类别1:M很高,F还行,R不高,重要保持客户

客户价值分析之RFM模型相关推荐

  1. 【毕业设计】大数据客户价值分析(RFM模型)

    文章目录 1 简介 2 数据预处理 3 数据分析 3.1 数据准备 3.2 数据可视化 3.2.1 查看数据大概分布 3.2.2 分布直方图 4 R.F.M模型 4.1 模型含义 4.2 R.F.M的 ...

  2. 电商用户价值分析——基于RFM模型、KMeans聚类

    电商用户价值分析--基于RFM模型.KMeans聚类 一.背景 二.RFM模型.KMeans聚类 三.分析框架 四.具体分析 1. 导入所需的库 2. 导入数据 3. 数据清洗 4. 数据分析 4.1 ...

  3. 商品新零售行业——客户价值分析驾驶舱(附详细操作)

      如果觉得文章写得好,如果你想要博客文章中的数据,请关注公众号:[数据分析与统计学之美],添加作者[个人微信],进群和作者交流! 目录   1.什么是"新零售"?   2.新零售 ...

  4. 学习笔记Hive(九)—— 实例:航空客户价值分析数据预处理

    一.背景与目标 1.1.背景 1..行业内竞争 民航的竞争除了三大航空公司之间的竞争之外,还将加入新崛起的各类小型航空公司.民营航空公司,甚至国外航空巨头.航空产品生产过剩,产品同质化特征愈加明显,于 ...

  5. 客户价值分析。[技术]

    原文 :  客户价值分析 使用RFM方法(最近购买日Recency, 各期购买频率Frequency, 各期平均单次购买金额Monetary)能够科学地预测老客户(有交易客户)今后的购买金额,再对销售 ...

  6. SPSS用KMEANS(K均值)、两阶段聚类、RFM模型在P2P网络金融研究借款人、出款人行为数据规律...

    全文下载链接:http://tecdat.cn/?p=27831 随着P2P网络金融平台的交易量的激增,其交易数据不能得到充分有效地利用.将聚类分析引入到P2P网络金融平台的管理之中,利用聚类分析技术 ...

  7. 使用ML.NET实现基于RFM模型的客户价值分析

    RFM模型 在众多的客户价值分析模型中,RFM模型是被广泛应用的,尤其在零售和企业服务领域堪称经典的分类手段.它的核心定义从基本的交易数据中来,借助恰当的聚类算法,反映出对客户较为直观的分类指示,对于 ...

  8. 【用户价值分析 RFM模型】用户价值分析

    RFM模型是衡量客户价值和客户创利能力的重要工具和手段.RFM分析模型主要由三个指标组成,下面对这三个指标的定义和作用做下简单解释: 1.最近一次消费(Recency) 最近一次消费意指用户上一次购买 ...

  9. 客户价值和客户创利能力分析(基于改进RFM模型)

    业务背景: 1.⽤户价值细分是了解⽤户价值度的重要途径,针对交易数据分析的常⽤模型是 RFM 模型 2.业务对 RFM 的结果要求     对⽤户做分组     将每个组的⽤户特征概括和总结出来,便于 ...

  10. Python数据挖掘-RFM模型K-means聚类分析-航空公司客户价值分析

    使用教材:<Python数据分析与挖掘实战> 模型:RFM模型 算法:K-means聚类:其他方法还用到了层次聚类 数据:需要数据的可以评论里call. 内容: (1)案例: 航空公司客户 ...

最新文章

  1. 如何进行Web服务的性能测试?
  2. 鸿蒙大陆武器合成,鸿蒙大陆9.1攻略(附隐藏英雄密码)
  3. Python学习笔记:SMTP服务器
  4. Another way to define Angular controller
  5. 让皮肤美白细致的七大DIY - 生活至上,美容至尚!
  6. 马化腾生日当天 微信支付居然崩溃了//(ㄒoㄒ)//
  7. videocapture 保存图片_RoboMaster视觉教程OpenCV(二)读取视频图像与转换
  8. sob攻略超详细攻略_2020成都超详细旅游,美食攻略
  9. C-Free5注册码,秘钥,解决办法
  10. jsp实现简单购物车过程
  11. 快速查询及下载CCF推荐期刊目录方法
  12. 这篇文章告诉你PDF转WORD免费软件有哪些?
  13. 我们为什么要做接口管理平台 YApi
  14. PHP+AJAX开发幸运大转盘抽奖
  15. 特斯拉又撞“人”了 汽车激光雷达“盛宴”开启
  16. ArcGIS Pro_地理配准
  17. OpenCV的cv::cvtColor()
  18. HyperMesh Notes
  19. 美国TELEMARK电源维修电子枪高压控制电源修理
  20. Linux C++ 网络库 Muduo

热门文章

  1. box-sizing失效情况
  2. 使用ArchR分析单细胞ATAC-seq数据(第一章)
  3. matlab怎么画lnx图像,inx图像(lnx的图像函数)
  4. 52单片机C语言如何用间接寻址,单片机要如何寻址?
  5. 华为工程师猝死,36岁,22月无休:比挣钱更重要的是活着
  6. 数字图像处理—图像纹理特征
  7. 如何利用软文营销将好品牌故事?
  8. 傲腾optane介绍
  9. html语言标题怎么居中,HTML – 如何在标题中垂直居中文本?
  10. 用TFmini-Plus实现人流、身高测量