最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

泰迪數(shù)據(jù)分析案例丨商品零售購物籃分析(上)

2023-08-15 13:40 作者:泰迪科技  | 我要投稿

購物籃分析

關(guān)聯(lián)規(guī)則挖掘應(yīng)用

將單個客戶一次購買商品的總和(以收銀臺結(jié)賬為準(zhǔn))稱為一個購物籃。那么購物籃分析就是針對商品的相關(guān)性進(jìn)行分析。因為最初這種關(guān)聯(lián)分析主要是在超市應(yīng)用廣泛,所以也稱為“購物籃分析”。


購物籃分析是商業(yè)領(lǐng)域最前沿、最具挑戰(zhàn)性的問題之一,也是許多企業(yè)研究的重點問題。購物籃分析是通過發(fā)現(xiàn)顧客在一次購買行為中放入購物籃中不同商品之間的關(guān)聯(lián),研究客戶的購買行為,從而輔助零售企業(yè)制定營銷策略的一種數(shù)據(jù)分析方法。


本章使用Apriori關(guān)聯(lián)規(guī)則算法實現(xiàn)購物籃分析,發(fā)現(xiàn)超市不同商品之間的關(guān)聯(lián)關(guān)系,并根據(jù)商品之間的關(guān)聯(lián)規(guī)則制定銷售策略。


背景與挖掘目標(biāo)

現(xiàn)代商品種類繁多,顧客往往會由于需要購買的商品眾多而變得疲于選擇,且顧客并不會因為商品選擇豐富而選擇購買更多的商品。繁雜的選購過程往往會給顧客疲憊的購物體驗。對于某些商品,顧客會選擇同時購買,如面包與牛奶、薯片與可樂等,當(dāng)面包與牛奶或者薯片與可樂分布在商場的兩側(cè),且距離十分遙遠(yuǎn)時,顧客購買的欲望就會減少,在時間緊迫的情況下顧客甚至?xí)艞壻徺I某些計劃購買的商品。相反,把牛奶與面包擺放在相鄰的位置,既給顧客提供便利,提升購物體驗,又提高顧客購買的概率,達(dá)到了促銷的目的。許多商場以打折方式作為主要促銷手段,以更少的利潤為代價獲得更高的銷量。打折往往會使顧客增加原計劃購買商品的數(shù)量,對于原計劃不打算購買且不必要的商品,打折的吸引力遠(yuǎn)遠(yuǎn)不足。而正確的商品擺放卻能提醒顧客購買某些必需品,甚至吸引他們購買感興趣的商品。


因此,為了獲得最大的銷售利潤,銷售什么樣的商品,采用什么樣的促銷策略,商品在貨架上如何擺放,了解顧客的購買習(xí)慣和偏好對銷售商尤其重要。通過對商場銷售數(shù)據(jù)進(jìn)行分析,從而得到顧客的購買行為特征,并根據(jù)發(fā)現(xiàn)的規(guī)律而采取有效的行動,制定商品擺放、商品定價、新商品采購計劃,對商場增加銷量并獲取最大利潤有重要意義。


我們需要根據(jù)提供的數(shù)據(jù)實現(xiàn)以下目標(biāo):

1)?構(gòu)建零售商品的Apriori關(guān)聯(lián)規(guī)則模型,分析商品之間的關(guān)聯(lián)性;

2)?根據(jù)模型結(jié)果給出銷售策略。


01

挖掘建模的總體流程

本次數(shù)據(jù)挖掘建模的總體流程如圖 1所示。


圖?1??購物籃分析流程圖


購物籃關(guān)聯(lián)規(guī)則挖掘主要步驟如下:

1)?對原始數(shù)據(jù)進(jìn)行數(shù)據(jù)探索性分析,分析商品的熱銷情況與商品結(jié)構(gòu);

2)?對原始數(shù)據(jù)進(jìn)行數(shù)據(jù)預(yù)處理,轉(zhuǎn)換數(shù)據(jù)形式,使之符合Apriori關(guān)聯(lián)規(guī)則算法要求;

3)?在步驟(2)得到的建模數(shù)據(jù)基礎(chǔ)上,采用Apriori關(guān)聯(lián)規(guī)則算法,調(diào)整模型輸入?yún)?shù),完成商品關(guān)聯(lián)性分析;

4)?結(jié)合實際業(yè)務(wù),對模型結(jié)果進(jìn)行分析,根據(jù)分析結(jié)果給出銷售建議,最后輸出關(guān)聯(lián)規(guī)則結(jié)果。


02

數(shù)據(jù)探索分析

本案例的探索性分析是查看數(shù)據(jù)特征,以及對商品熱銷情況和商品結(jié)構(gòu)分析。

探索數(shù)據(jù)特征是了解數(shù)據(jù)的第一步。分析商品熱銷情況和商品結(jié)構(gòu),是為了更好地實現(xiàn)企業(yè)的經(jīng)營目標(biāo)。商品管理應(yīng)堅持商品齊全和商品優(yōu)選的原則,產(chǎn)品銷售基本滿足“二八定律”即80%的銷售額是由20%的商品創(chuàng)造的,這些商品是企業(yè)主要盈利商品,要作為商品管理的重中之重。商品熱銷情況分析和商品結(jié)構(gòu)分析也是商品管理不可或缺的一部分,其中商品結(jié)構(gòu)分析能夠幫助保證商品的齊全性,熱銷情況分析可以助力于商品優(yōu)選。

某商品零售企業(yè)共收集了9835個購物籃的數(shù)據(jù),購物籃數(shù)據(jù)主要包括3個屬性:id、Goods和Types。屬性的具體說明如表 1所示。

表1 購物籃屬性說明

1. 數(shù)據(jù)特征

探索數(shù)據(jù)的特征,查看每列屬性、最大值、最小值,是了解數(shù)據(jù)的第一步。查看數(shù)據(jù)特征,如代碼清單1所示。

import numpy as npimport pandas as pd
inputfile = '../data/GoodsOrder.csv' ? # 輸入的數(shù)據(jù)文件data = pd.read_csv(inputfile,encoding='gbk') ?# 讀取數(shù)據(jù)data.info() ?# 查看數(shù)據(jù)屬性
data = data['id']description = [data.count(),data.min(), data.max()] ?# 依次計算總數(shù)、最小值、最大值description = pd.DataFrame(description, index=['Count','Min', 'Max']).T ?# 將結(jié)果存入數(shù)據(jù)框print('描述性統(tǒng)計結(jié)果:\n',np.round(description)) ?# 輸出結(jié)果

代碼清單1 查看數(shù)據(jù)特征


根據(jù)代碼清單1可得,每列屬性共有43367個觀測值,并不存在缺失值。查看“id”屬性的大值和最小值,可知某商品零售企業(yè)共收集了9835個購物籃的數(shù)據(jù),其中包含169個不同的商品類別,售出商品總數(shù)為43367件。

2. 分析熱銷商品

商品熱銷情況分析是商品管理不可或缺的一部分,熱銷情況分析可以助力于商品優(yōu)選。計算銷量排行前10商品的銷量及占比,并繪制條形圖顯示銷量前10商品的銷量情況,如代碼清單2所示。

# 銷量排行前10商品的銷量及其占比import pandas as pdinputfile = '../data/GoodsOrder.csv' ?# 輸入的數(shù)據(jù)文件data = pd.read_csv(inputfile,encoding='gbk') ?# 讀取數(shù)據(jù)group = data.groupby(['Goods']).count().reset_index() ?# 對商品進(jìn)行分類匯總sorted=group.sort_values('id',ascending=False)print('銷量排行前10商品的銷量:\n', sorted[:10]) ?# 排序并查看前10位熱銷商品
# 畫條形圖展示出銷量排行前10商品的銷量import matplotlib.pyplot as pltx = sorted[:10]['Goods']y = sorted[:10]['id']plt.figure(figsize=(8, 4)) ?# 設(shè)置畫布大小plt.barh(x,y)plt.rcParams['font.sans-serif'] = 'SimHei'plt.xlabel('銷量') ?# 設(shè)置x軸標(biāo)題plt.ylabel('商品類別') ?# 設(shè)置y軸標(biāo)題plt.title('商品的銷量TOP10') ?# 設(shè)置標(biāo)題plt.savefig('../tmp/top10.png') ?# 把圖片以.png格式保存plt.show() ?# 展示圖片
# 銷量排行前10商品的銷量占比data_nums = data.shape[0]for idnex, row in sorted[:10].iterrows(): ? ?print(row['Goods'],row['id'],row['id']/data_nums)

代碼清單2 分析熱銷商品


根據(jù)代碼清單2可得到銷量排行前10商品的銷量及其占比情況,如表 2和圖 2所示。


表?2?銷量排行前10商品的銷量及其占比

?圖 2?銷量排行前10的商品銷量情況


通過分析熱銷商品的結(jié)果可知,全脂牛奶銷售量最高,銷量為2513件,占比5.795%;其次是其他蔬菜、面包卷和蘇打,占比分別為4.388%、4.171%、3.955%。


2. 分析商品結(jié)構(gòu)

對每一類商品的熱銷程度進(jìn)行分析,有利于商家制定商品在貨架的擺放策略和位置,若是某類商品較為熱銷,商場可以把此類商品擺放到商場的中心位置,方便顧客選購。或者放在商場深處位置,使顧客在購買熱銷商品前經(jīng)過非熱銷商品,增加在非熱銷商品處的停留時間,促進(jìn)非熱銷產(chǎn)品的銷量。

原始數(shù)據(jù)中的商品本身已經(jīng)過歸類處理,但是部分商品還是存在一定的重疊,故再次對其進(jìn)行歸類處理。分析歸類后各類別商品的銷量及其占比,并繪制餅圖顯示各類商品的銷量占比情況,如代碼清單3所示

import pandas as pdinputfile1 = '../data/GoodsOrder.csv'inputfile2 = '../data/GoodsTypes.csv'data = pd.read_csv(inputfile1,encoding='gbk')types = pd.read_csv(inputfile2,encoding='gbk') ?# 讀入數(shù)據(jù)
group = data.groupby(['Goods']).count().reset_index()sort = group.sort_values('id',ascending=False).reset_index()data_nums = data.shape[0] ?# 總量del sort['index']
sort_links = pd.merge(sort,types) ?# 合并兩個datafreame 根據(jù)type# 根據(jù)類別求和,每個商品類別的總量,并排序sort_link = sort_links.groupby(['Types']).sum().reset_index()sort_link = sort_link.sort_values('id',ascending=False).reset_index()del sort_link['index'] ?# 刪除“index”列
# 求百分比,然后更換列名,最后輸出到文件sort_link['count'] = sort_link.apply(lambda line: line['id']/data_nums,axis=1)sort_link.rename(columns={'count':'percent'},inplace=True)print('各類別商品的銷量及其占比:\n',sort_link)outfile1 = '../tmp/percent.csv'sort_link.to_csv(outfile1,index=False,header=True,encoding='gbk') ?# 保存結(jié)果
# 畫餅圖展示每類商品銷量占比import matplotlib.pyplot as pltdata = sort_link['percent']labels = sort_link['Types']plt.figure(figsize=(8, 6)) ?# 設(shè)置畫布大小 ? plt.pie(data,labels=labels,autopct='%1.2f%%')plt.rcParams['font.sans-serif'] = 'SimHei'plt.title('每類商品銷量占比') ?# 設(shè)置標(biāo)題plt.savefig('../tmp/persent.png') ?# 把圖片以.png格式保存plt.show()

代碼清單3?各類別商品的銷量及其占比


根據(jù)代碼清單3可得各類別商品的銷量及其占比情況,結(jié)果如表3、圖3所示。


表3 各類別商品的銷量及其占比



圖 3 各類別商品的銷量占比情況

通過分析各類別商品的銷量及其占比情況可知,非酒精飲料、西點、果蔬三類商品銷量差距不大,占總銷量的50%左右,同時,根據(jù)大類劃分發(fā)現(xiàn)和食品相關(guān)的類的銷量總和接近90%,說明了顧客傾向于購買此類產(chǎn)品,而其余商品僅為商場滿足顧客的其余需求而設(shè)定,并非銷售的主力軍。


進(jìn)一步查看銷量第一的非酒精飲料類商品的內(nèi)部商品結(jié)構(gòu),并繪制餅圖顯示其銷量占比情況,如代碼清單4所示。

# 先篩選“非酒精飲料”類型的商品,然后求百分比,然后輸出結(jié)果到文件。selected = sort_links.loc[sort_links['Types'] == '非酒精飲料'] ?# 挑選商品類別為“非酒精飲料”并排序child_nums = selected['id'].sum() ?# 對所有的“非酒精飲料”求和selected['child_percent'] = selected.apply(lambda line: line['id']/child_nums,axis=1) ?# 求百分比selected.rename(columns={'id':'count'},inplace=True)print('非酒精飲料內(nèi)部商品的銷量及其占比:\n',selected)outfile2 = '../tmp/child_percent.csv'sort_link.to_csv(outfile2,index=False,header=True,encoding='gbk') ?# 輸出結(jié)果
# 畫餅圖展示非酒精飲品內(nèi)部各商品的銷量占比import matplotlib.pyplot as pltdata = selected['child_percent']labels = selected['Goods']plt.figure(figsize=(8,6)) ?# 設(shè)置畫布大小explode = (0.02,0.03,0.04,0.05,0.06,0.07,0.08,0.08,0.3,0.1,0.3) ?# 設(shè)置每一塊分割出的間隙大小plt.pie(data,explode=explode,labels=labels,autopct='%1.2f%%', ? ? ?pctdistance=1.1,labeldistance=1.2)plt.rcParams['font.sans-serif'] = 'SimHei'plt.title("非酒精飲料內(nèi)部各商品的銷量占比") ?# 設(shè)置標(biāo)題plt.axis('equal')plt.savefig('../tmp/child_persent.png') ?# 保存圖形plt.show() ?# 展示圖形

代碼清單4?非酒精飲料內(nèi)部商品的銷量及其占比


根據(jù)代碼清單4可得非酒精飲料內(nèi)部商品的銷量及其占比情況,如表4、圖4所示。


表4 非酒精飲料內(nèi)部商品的銷量及其占比
圖 4非酒精飲料內(nèi)部商品的銷量占比情況


通過分析非酒精飲料內(nèi)部商品的銷量及其占情況可知,全脂牛奶的銷量在非酒精飲料的總銷量中占比超過33%,前3種非酒精飲料的銷量在非酒精飲料的總銷量中占比接近70%,說明了大部分顧客到店購買的飲料為這三種,需要時常注意貨物的庫存,定期補(bǔ)貨必不可少。

更多具體詳細(xì)內(nèi)容可到 泰迪智能科技大數(shù)據(jù)培訓(xùn)平臺-泰迪云課堂咨詢咨詢了解更多

泰迪數(shù)據(jù)分析案例丨商品零售購物籃分析(上)的評論 (共 條)

分享到微博請遵守國家法律
尼勒克县| 神木县| 社会| 永平县| 屏南县| 永德县| 新源县| 吉林省| 象山县| 安岳县| 衡阳县| 河池市| 娄底市| 焦作市| 姜堰市| 乐平市| 阿城市| 高碑店市| 顺义区| 克拉玛依市| 广水市| 浦北县| 亚东县| 德庆县| 乾安县| 宁阳县| 扎兰屯市| 云龙县| 梅河口市| 闽清县| 土默特右旗| 陕西省| 博湖县| 尚志市| 甘肃省| 水富县| 锦屏县| 沐川县| 华池县| 鸡泽县| 汝南县|