全文链接:http://tecdat.cn/?p=30330
原文出处:拓端数据部落公众号
团队需要分析一个来自在线零售商的数据。该数据集包含了78周的购买历史。该数据文件中的每条记录包括四个字段。 客户的ID(从1到2357不等),交易日期,购买的书籍数量,以及价值。 我们被要求建立一个模型来预测消费者每周的购买频率、书籍的购买单位和购买价值。
RFM模型
RFM是一个用于营销分析的模型,它通过购买模式或习惯来细分公司的消费者群体。特别是,它评估了客户的回顾性(他们多久前进行过一次购买)、频率(他们购买的频率)和价值(他们花多少钱)。
然后,通过测量和分析消费习惯,RFM被用来识别一个公司或组织的最佳客户,以改善低分客户并保持高分客户。
关键要点
经常性、频率、价值(RFM)是一种营销分析工具,用于根据客户消费习惯的性质来确定公司的最佳客户。 一个RFM分析通过对客户和顾客的三个类别进行打分来评估他们:他们最近有多大的购买行为,他们购买的频率,以及他们购买的规模。 RFM模型为这三个类别中的每一个客户打出1-5分(从最差到最好)的分数。 RFM分析帮助企业合理地预测哪些客户有可能再次购买他们的产品,有多少收入来自于新客户(相对于老客户),以及如何将偶尔购买的买家变成习惯购买的买家。
代码语言:javascript复制####计算用户最近一次的购买
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左右,说明拟合效果一般。
对测试集做预测
线性回归模型预测值和拟合值比较
预测拟合值的图中,红点表示实际样本点,可以看到F和M值的预测相对接近实际样本点,预测效果较好。然而,误差仍然比较大,因此尝试采用决策树模型进行预测。
决策树模型预测
代码语言:javascript复制ct <- rpart.control(xval=10, minsplit=20, cp=0.1)
绘制决策树
代码语言:javascript复制rpart.plot(fitR, branch=1, branch.type=2, type=1,
border.col="blue", split.col="red",
从结果图来看,决策树对f值和m值的拟合程度更好。
从三个模型的结果里来看,rel error和xerror都较小,因此模型预测拟合效果较好。
因此,模型的整体效果相对线性模型得到了提升。
最受欢迎的见解
1.PYTHON用户流失数据挖掘:建立逻辑回归、XGBOOST、随机森林、决策树、支持向量机、朴素贝叶斯模型和KMEANS聚类用户画像
2.R语言基于树的方法:决策树,随机森林
3.python中使用scikit-learn和pandas决策树
4.机器学习:在SAS中运行随机森林数据分析报告
5.R语言用随机森林和文本挖掘提高航空公司客户满意度
6.机器学习助推快时尚精准销售时间序列
7.用机器学习识别不断变化的股市状况——隐马尔可夫模型的应用
8.python机器学习:推荐系统实现(以矩阵分解来协同过滤)
9.python中用pytorch机器学习分类预测银行客户流失