Rossmann Store 便利店銷量預測數據分析


 

簡介:
Rossmann成立於1972年,是德國最大的日化用品超市,在7個歐洲國家有3000多家葯店。商店不定時會舉辦短期的促銷活動以及連續的促銷活動以此來提高銷售額。除此之外,商店的銷售還受到許多因素的影響,包括促銷、競爭、學校和國家假日、季節性和周期性。
本文旨在分析影響商店銷售的相關因素,並預測未來店鋪的銷售額。 據以1115家Rossmann連鎖商店為研究對象,從2013年1月1日到2015年7月共計錄1017209條銷售數據(27個特征)。首先使用R語言實現對數據的清洗整理,其次對數據進行快速探索分析,分析了Rossmann Store店鋪銷售數據特征、競爭對手數據特征,以及考察了促銷活動、競爭、節假日、季節等因素對銷售額的影響。最后運用歷史數據對超市建立銷量預測模型,預測2015月8月1日到2015年9月17日的店鋪銷售情況。

 
 整篇報告框架如下:
 

 

一、店鋪特征分析

1.1 店鋪類型

下圖中圓形的大小表示各個類型的店鋪數據量的大小,圖形的顏色代表不同店鋪的類型。
從店鋪類型的分布上來看,一共有4種類型的商店,a類店鋪的數據量最大,達到所有數據的一半以上,d類和c類次之,數據量最少的是b類店鋪,只占到1.56%。

 

1.2 商店的開門情況

數據顯示並非所有的數據都顯示店鋪營業的,顯示店鋪營業的數據有888392條(83.01%);有16.99%的數據(172817條)記錄了店鋪當天關門。

由於數據中店鋪關閉的數據所占比例較大,因此需要對數據進行進一步細分,看看是否有什么因素和商店開門情況相關。
根據星期對店鋪營業情況進行划分,可以發現 星期一到星期六的數據大體差不多,只有極少數的數據顯示商店關閉,但是星期天的數據中,顯示關門的商店占據相當大的比例;停止營業的數據幾乎都集中在星期天。
由此可以推測, 星期天極有可能是Rossmann商店的固定休息日,而星期一至星期六是商店的固定營業時間。

 

 
 
 根據節假日對店鋪營業情況進行細分,從圖中可以看出, 節假日店鋪關門的比例遠遠高於非節假日。由此可以得出,大部分商店在節假日固定休息。
 

 

 
 
1.3 顧客數量分布和銷售額數據分布
 
下圖為商店的平均銷售額、平均顧客數量分布圖,橫軸表示店鋪ID,縱軸分別表示日平均顧客數量(人)和日平均銷售額(歐元), 按照顧客數量由高到低進行排序
從圖中可以看出, 在商店營業的情況下,平均每天顧客人數最多達到了3403人,日均銷售額最多達21757歐元
所有店鋪平均顧客數量為755人/天,平均銷售額為6935歐元/天,人均花費9.185歐元/天。
從整體上看,顧客數量和銷售額保持同趨勢變化,但是這並不意味着顧客光顧的數量越多,店鋪銷售額就越高;在顧客數量差不多的店鋪之間,銷售額可能存在很大差異。
 

 

小結:

依次從商店類型、營業情況、顧客數量和銷售額對店鋪特征進行描述,結果顯示 如下:

1. 以商店類型來分,一共有4種類型,不同類型的商店的數據量差別較大。
2. 以店鋪營業情況來分,超百分之十的數據顯示店鋪暫停營業,其原因主要為星期天固定休息、節假日休息。
3. 以顧客數量和銷售額對數據進行探究,不同的商店的顧客數量和銷售額差異較大。

 

 二、商店銷售額相關性因素分析
 
 1. 內部因素
根據數據提供的字段,本文將從店鋪類型分布,顧客數量分布,短期促銷活動、連續促銷活動等4個角度進行切入,探究影響銷售額的內部因素。
 
 1.1 店鋪類型與銷售額關系
從下圖中不難發現,商店類型和商店銷售額有重要關系。
1. b類型的商店平均銷售額最高,達到8000歐元以上,遠遠高於其他三種類型;其余三種類型的店鋪銷售額差不多;
2. a、c、d類商店的2015年平均銷售額同比2014年和2013年的數據幾乎沒有發生變化,而b類商店的平均銷售數據保持穩定增長
3. b類店鋪較其他店鋪對季節敏感性更強,隨季節波動的銷售額變化幅度最大。

 

1.2  顧客數量與銷售額關系
下圖為顧客數量與銷售額散點圖,為了更好的發現數據之間的關系,可以 對顧客人數和銷售額同時取對數處理。
可以看出,經過數據變換之后, 顧客數量和銷售額呈現了較強的正相關性。
 

 

 
 
1.3 促銷活動與銷售額關系(短期促銷活動Promo和連續促銷活動Promo2)
通過下面兩張圖可以判斷促銷對店鋪銷售業績的影響。
數據顯示, 未參與短期促銷活動的商店的平均銷售額遠遠低於參加短期促銷活動的商店;參與長期促銷活動的店鋪則相反,盡管采用長期促銷的策略來增加商店的銷售額業績,但其數據仍然低於未參加促銷的商店的數據。
短期促銷可以較好地刺激消費,圖表所示, 當天進行短期促銷活動的店鋪平均銷售額達到7970歐元,遠遠高於沒有進行短期促銷活動的店鋪(平均4402歐元/天);
和短期促銷相反,對於連續促銷活動,未參加的店鋪的銷售額反而比參加活動的商店高700歐元左右(平均6127歐元/天)。
 
其中的原因可能在於店鋪本身存在差異性,那些參加連續促銷活動的商店可能本身就是因為銷售額過低,所以需要參加連續銷售活動來提高商店的業績,而對於那些本身銷售額較高的商店來說,連續促銷對於這些店鋪來說效果並不那么顯著,因此它們不需要采取長期促銷策略。
 

 

 

 

 

 2. 外部因素:

根據數據提供的字段,本文將從季節、國家節假日、學校假期、星期、最近的競爭商鋪的距離等5個角度進行切入,探究影響銷售額的外部因素。
 
2.1 季節與銷售額關系
銷售業績的波動呈現周期性和淡旺季分布,其中每年的峰值表現在4季階段,其次是2季階段,而1季階段(峰值之后的1月、2、3月份),銷售額急劇下降。
對於商店來說,產品的季節性和周期性在一定程度上能夠決定商品銷量的好壞,使得商店銷售額出現下圖中的波動。
 
 

 

 

 
 
2.2 星期、法定節假日、學校假期與銷售額關系
在商店特征分析中,我們發現 絕大部分商店在節假日、星期天關門,除去這些數據之后,可以看出, 和非節假日的銷售數據相比,節假日的銷售額明顯要高得多;星期天的平均銷售額也明顯好於非星期天的平均銷售額;同時,盡管沒有數據顯示學校假期可能會導致店鋪停止營業,但數據表明學校放假的時間段商店的銷售額高於非學校假期的時間段。
 
從原因上分析, 一方面,同類店鋪暫停營業的行為大大減少了市場競爭;另一方面,周末、節假日期間客流量的增加也為商店銷售額的提升提供可能性。
 

 

 
 
 
 
 
2.3 同類競爭店鋪相隔距離與銷售額關系
 同類型競爭商店可能會影響商店的銷售額。 同類競爭店鋪相隔距離越近,意味着這類商店通常位於銷售較高的城市中心地區或擁擠地區, 因此距離越近的商店銷量傾向於越高;但是,距離越近,也意味着同一的商區的客戶會被競爭對手分一杯羹,銷售額有可能會減少。
 
從下圖中可以看出, 同類競爭店鋪相隔距離與銷售額並沒有呈現出明顯的規律變化。在一個好的/壞的地區有/沒有競爭對手,這兩者產生的影響相互抵消了。
 

 

 
三、構建銷量預測模型
 
1.明確目標,設定評估標准
便利店銷售模型的目標是根據Rossmann Store 2013年1月1日到20157月31日的數據,預測之后48天商店的銷售額。該問題為回歸類有監督學習模型。
 
因為Kaggle網站規定的評估方法為均方根百分比誤差(RMSPE)
 
,因此在選擇需要建立的模型的時候,需要自定義函數,以此評估模型的好壞,從而優化模型結果。
 
 2. 數據預處理,處理空值和異常值
對數據中出現的空值和異常值,我們使用眾數、中位數進行插補、刪除字段等多種方法處理數據;
數據經過清洗后,並篩選出店鋪營業並且銷售額不為0的數據(共計844392條),經過特征選擇后,再拆分出70%訓練數據集和30%測試數據集。
 
3.特征工程選擇
通過前文的商店銷售額相關因素分析,提取店鋪是否營業、店鋪類型、短期促銷、連續促銷、日期、法定假期、學校假期、同類競爭店鋪相隔距離等9個特征作為貸款營銷預測模型的特征值。同時對特征進行進一步拆分組合:處理時間戳,通過將日期(DATE)字段拆分成年、月、日三個字段;分解分類變量,將所有非數值型字段轉化成因子型,並轉換成獨熱(One-hot)編碼。
 
4、訓練模型,選擇模型及調節超參數進而優化結果
在模型使用上,本文嘗試用時間序列、Random Forest和xgboost模型進行商店銷量的預測。最后根據評估的結果,選擇最佳模型進行進一步的調參優化。
 
5、評估模型結果
最后通過比較,xgboost模型表現較好,RMSPE為0.1946, 最終輸出結果如下(部分):
 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM