数据分享|R语言用RFM、决策树模型顾客购书行为的数据预测|附代码数据

发布时间 2023-12-12 20:15:16作者: 拓端tecdat

全文链接:http://tecdat.cn/?p=30330

最近我们被客户要求撰写关于RFM、决策树模型的研究报告,包括一些图形和统计输出。

团队需要分析一个来自在线零售商的数据

该数据包含了78周的购买历史。该数据文件中的每条记录包括四个字段。客户的ID(从1到2357不等),交易日期,购买的书籍数量,以及价值。我们被要求建立一个模型来预测消费者每周的购买频率、书籍的购买单位和购买价值。

图片

RFM模型

RFM是一个用于营销分析的模型,它通过购买模式或习惯来细分公司的消费者群体。特别是,它评估了客户的回顾性(他们多久前进行过一次购买)、频率(他们购买的频率)和价值(他们花多少钱)。

然后,通过测量和分析消费习惯,RFM被用来识别一个公司或组织的最佳客户,以改善低分客户并保持高分客户。

关键要点

经常性、频率、价值(RFM)是一种营销分析工具,用于根据客户消费习惯的性质来确定公司的最佳客户。一个RFM分析通过对客户和顾客的三个类别进行打分来评估他们:他们最近有多大的购买行为,他们购买的频率,以及他们购买的规模。RFM模型为这三个类别中的每一个客户打出1-5分(从最差到最好)的分数。RFM分析帮助企业合理地预测哪些客户有可能再次购买他们的产品,有多少收入来自于新客户(相对于老客户),以及如何将偶尔购买的买家变成习惯购买的买家。

 
 

####计算用户最近一次的购买


R_table$R <- as.numeric(NOW - ParsedDate)

###计算用户的购买频率
aggregate(FUN=length) # Calculate F

###计算用户的购买金额
aggregate(FUN=sum) # Calculate M

图片

得到每个用户的RFM值,利用RFM三个值的四分位数来对用户进行分类

图片

多元线性回归模型

查看回归模型结果

图片

得到对r值的线性拟合模型的结果,可以看到RFM三个分类值都与r值有显著的关系,Rsquare值达到了0.8以上,说明拟合效果较好。

图片

得到对r值的线性拟合模型的结果,可以看到RFM三个分类值都与f值有显著的关系,Rsquare值达到早0.4左右,说明拟合效果一般。

图片

得到对r值的线性拟合模型的结果,可以看到出了M分类值以外,FM的分类值都与f值有显著的关系,Rsquare值达到了0.4左右,说明拟合效果一般。


点击标题查阅往期内容

图片

数据分享|R语言用主成分PCA、 逻辑回归、决策树、随机森林分析心脏病数据并高维可视化

图片

左右滑动查看更多

图片

01

图片

02

图片

03

图片

04

图片

对测试集做预测

线性回归模型预测值和拟合值比较

图片

预测拟合值的图中,红点表示实际样本点,可以看到F和M值的预测相对接近实际样本点,预测效果较好。然而,误差仍然比较大,因此尝试采用决策树模型进行预测。

决策树模型预测

 
 
ct <- rpart.control(xval=10, minsplit=20, cp=0.1)

绘制决策树

 
 
rpart.plot(fitR, branch=1, branch.type=2, type=1, 



           border.col="blue", split.col="red",

图片

图片 

从结果图来看,决策树对f值和m值的拟合程度更好。

图片

图片

图片

从三个模型的结果里来看,rel error和xerror都较小,因此模型预测拟合效果较好。

因此,模型的整体效果相对线性模型得到了提升。

图片


图片

点击文末 “阅读原文”

获取全文完整代码数据资料。

本文选自《R语言用RFM、决策树模型顾客购书行为的数据预测》。

点击标题查阅往期内容

数据分享|Python决策树、随机森林、朴素贝叶斯、KNN(K-最近邻居)分类分析银行拉新活动挖掘潜在贷款客户
PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享
用PyTorch机器学习神经网络分类预测银行客户流失模型
R语言用FNN-LSTM假近邻长短期记忆人工神经网络模型进行时间序列深度学习预测4个案例
Python中TensorFlow的长短期记忆神经网络(LSTM)、指数移动平均法预测股票市场和可视化
R语言KERAS用RNN、双向RNNS递归神经网络、LSTM分析预测温度时间序列、 IMDB电影评分情感
Python用Keras神经网络序列模型回归拟合预测、准确度检查和结果可视化
Python用LSTM长短期记忆神经网络对不稳定降雨量时间序列进行预测分析
R语言中的神经网络预测时间序列:多层感知器(MLP)和极限学习机(ELM)数据分析报告
R语言深度学习:用keras神经网络回归模型预测时间序列数据
Matlab用深度学习长短期记忆(LSTM)神经网络对文本数据进行分类
R语言KERAS深度学习CNN卷积神经网络分类识别手写数字图像数据(MNIST)
MATLAB中用BP神经网络预测人体脂肪百分比数据
Python中用PyTorch机器学习神经网络分类预测银行客户流失模型
R语言实现CNN(卷积神经网络)模型进行回归数据分析Python使用神经网络进行简单文本分类
R语言用神经网络改进Nelson-Siegel模型拟合收益率曲线分析
R语言基于递归神经网络RNN的温度时间序列预测
R语言神经网络模型预测车辆数量时间序列
R语言中的BP神经网络模型分析学生成绩
matlab使用长短期记忆(LSTM)神经网络对序列数据进行分类
R语言实现拟合神经网络预测和结果可视化
用R语言实现神经网络预测股票实例
使用PYTHON中KERAS的LSTM递归神经网络进行时间序列预测
python用于NLP的seq2seq模型实例:用Keras实现神经网络机器翻译
用于NLP的Python:使用Keras的多标签文本LSTM神经网络分类