數(shù)據(jù)分享|R語言用RFM、決策樹模型顧客購書行為的數(shù)據(jù)預(yù)測|附代碼數(shù)據(jù)
全文鏈接:http://tecdat.cn/?p=30330
最近我們被客戶要求撰寫關(guān)于RFM、決策樹模型的研究報告,包括一些圖形和統(tǒng)計輸出。
團隊需要分析一個來自在線零售商的數(shù)據(jù)
該數(shù)據(jù)包含了78周的購買歷史。該數(shù)據(jù)文件中的每條記錄包括四個字段??蛻舻腎D(從1到2357不等),交易日期,購買的書籍?dāng)?shù)量,以及價值。我們被要求建立一個模型來預(yù)測消費者每周的購買頻率、書籍的購買單位和購買價值。
RFM模型
RFM是一個用于營銷分析的模型,它通過購買模式或習(xí)慣來細分公司的消費者群體。特別是,它評估了客戶的回顧性(他們多久前進行過一次購買)、頻率(他們購買的頻率)和價值(他們花多少錢)。
然后,通過測量和分析消費習(xí)慣,RFM被用來識別一個公司或組織的最佳客戶,以改善低分客戶并保持高分客戶。
關(guān)鍵要點
經(jīng)常性、頻率、價值(RFM)是一種營銷分析工具,用于根據(jù)客戶消費習(xí)慣的性質(zhì)來確定公司的最佳客戶。一個RFM分析通過對客戶和顧客的三個類別進行打分來評估他們:他們最近有多大的購買行為,他們購買的頻率,以及他們購買的規(guī)模。RFM模型為這三個類別中的每一個客戶打出1-5分(從最差到最好)的分?jǐn)?shù)。RFM分析幫助企業(yè)合理地預(yù)測哪些客戶有可能再次購買他們的產(chǎn)品,有多少收入來自于新客戶(相對于老客戶),以及如何將偶爾購買的買家變成習(xí)慣購買的買家。
####計算用戶最近一次的購買R_table$R <- as.numeric(NOW - ParsedDate)###計算用戶的購買頻率aggregate(FUN=length) # Calculate F###計算用戶的購買金額aggregate(FUN=sum) # Calculate M
得到每個用戶的RFM值,利用RFM三個值的四分位數(shù)來對用戶進行分類
多元線性回歸模型
查看回歸模型結(jié)果
得到對r值的線性擬合模型的結(jié)果,可以看到RFM三個分類值都與r值有顯著的關(guān)系,Rsquare值達到了0.8以上,說明擬合效果較好。
得到對r值的線性擬合模型的結(jié)果,可以看到RFM三個分類值都與f值有顯著的關(guān)系,Rsquare值達到早0.4左右,說明擬合效果一般。
得到對r值的線性擬合模型的結(jié)果,可以看到出了M分類值以外,F(xiàn)M的分類值都與f值有顯著的關(guān)系,Rsquare值達到了0.4左右,說明擬合效果一般。
點擊標(biāo)題查閱往期內(nèi)容
數(shù)據(jù)分享|R語言用主成分PCA、?邏輯回歸、決策樹、隨機森林分析心臟病數(shù)據(jù)并高維可視化
左右滑動查看更多
01
02
03
04
對測試集做預(yù)測
線性回歸模型預(yù)測值和擬合值比較
預(yù)測擬合值的圖中,紅點表示實際樣本點,可以看到F和M值的預(yù)測相對接近實際樣本點,預(yù)測效果較好。然而,誤差仍然比較大,因此嘗試采用決策樹模型進行預(yù)測。
決策樹模型預(yù)測
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",
?
從結(jié)果圖來看,決策樹對f值和m值的擬合程度更好。
從三個模型的結(jié)果里來看,rel error和xerror都較小,因此模型預(yù)測擬合效果較好。
因此,模型的整體效果相對線性模型得到了提升。
點擊文末?“閱讀原文”
獲取全文完整代碼數(shù)據(jù)資料。
本文選自《R語言用RFM、決策樹模型顧客購書行為的數(shù)據(jù)預(yù)測》。
點擊標(biāo)題查閱往期內(nèi)容
數(shù)據(jù)分享|Python決策樹、隨機森林、樸素貝葉斯、KNN(K-最近鄰居)分類分析銀行拉新活動挖掘潛在貸款客戶
PYTHON銀行機器學(xué)習(xí):回歸、隨機森林、KNN近鄰、決策樹、高斯樸素貝葉斯、支持向量機SVM分析營銷活動數(shù)據(jù)|數(shù)據(jù)分享
用PyTorch機器學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)分類預(yù)測銀行客戶流失模型
R語言用FNN-LSTM假近鄰長短期記憶人工神經(jīng)網(wǎng)絡(luò)模型進行時間序列深度學(xué)習(xí)預(yù)測4個案例
Python中TensorFlow的長短期記憶神經(jīng)網(wǎng)絡(luò)(LSTM)、指數(shù)移動平均法預(yù)測股票市場和可視化
R語言KERAS用RNN、雙向RNNS遞歸神經(jīng)網(wǎng)絡(luò)、LSTM分析預(yù)測溫度時間序列、 IMDB電影評分情感
Python用Keras神經(jīng)網(wǎng)絡(luò)序列模型回歸擬合預(yù)測、準(zhǔn)確度檢查和結(jié)果可視化
Python用LSTM長短期記憶神經(jīng)網(wǎng)絡(luò)對不穩(wěn)定降雨量時間序列進行預(yù)測分析
R語言中的神經(jīng)網(wǎng)絡(luò)預(yù)測時間序列:多層感知器(MLP)和極限學(xué)習(xí)機(ELM)數(shù)據(jù)分析報告
R語言深度學(xué)習(xí):用keras神經(jīng)網(wǎng)絡(luò)回歸模型預(yù)測時間序列數(shù)據(jù)
Matlab用深度學(xué)習(xí)長短期記憶(LSTM)神經(jīng)網(wǎng)絡(luò)對文本數(shù)據(jù)進行分類
R語言KERAS深度學(xué)習(xí)CNN卷積神經(jīng)網(wǎng)絡(luò)分類識別手寫數(shù)字圖像數(shù)據(jù)(MNIST)
MATLAB中用BP神經(jīng)網(wǎng)絡(luò)預(yù)測人體脂肪百分比數(shù)據(jù)
Python中用PyTorch機器學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)分類預(yù)測銀行客戶流失模型
R語言實現(xiàn)CNN(卷積神經(jīng)網(wǎng)絡(luò))模型進行回歸數(shù)據(jù)分析Python使用神經(jīng)網(wǎng)絡(luò)進行簡單文本分類
R語言用神經(jīng)網(wǎng)絡(luò)改進Nelson-Siegel模型擬合收益率曲線分析
R語言基于遞歸神經(jīng)網(wǎng)絡(luò)RNN的溫度時間序列預(yù)測
R語言神經(jīng)網(wǎng)絡(luò)模型預(yù)測車輛數(shù)量時間序列
R語言中的BP神經(jīng)網(wǎng)絡(luò)模型分析學(xué)生成績
matlab使用長短期記憶(LSTM)神經(jīng)網(wǎng)絡(luò)對序列數(shù)據(jù)進行分類
R語言實現(xiàn)擬合神經(jīng)網(wǎng)絡(luò)預(yù)測和結(jié)果可視化
用R語言實現(xiàn)神經(jīng)網(wǎng)絡(luò)預(yù)測股票實例
使用PYTHON中KERAS的LSTM遞歸神經(jīng)網(wǎng)絡(luò)進行時間序列預(yù)測
python用于NLP的seq2seq模型實例:用Keras實現(xiàn)神經(jīng)網(wǎng)絡(luò)機器翻譯
用于NLP的Python:使用Keras的多標(biāo)簽文本LSTM神經(jīng)網(wǎng)絡(luò)分類