安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

python对零售商店进行数据分析,看看用户消费回购率等数据

6月18日 遭人厌投稿
  前言
  嗨喽!大家好呀,这里是魔王一、项目背景
  通过扫描零售商店电子销售点个别产品的条形码而获得的消费品销售的详细数据。这些数据提供了有关所售商品的数量、特征和价值以及价格的详细信息。二、数据来源
  链接三、提出问题消费情况分析及用户购买模式分析RFM和CLV分析不同类别商品关联规则挖掘四、理解数据Date:购买日期CustomerID:用户IDTransactionID:交易IDSKUCategory:商品分类SKU编码SKU:商品唯一SKU编码Quantity:购买数量SalesAmount:购买金额五、数据清洗1。导入数据importnumpyasnpimportpandasaspdfrommatplotlibimportpyplotaspltimportseabornassnsmatplotlibinline更改设计风格plt。style。use(ggplot)plt。rcParams〔font。sansserif〕〔SimHei〕np。versionpd。versiondfpd。readcsv(scannerdata。csv)df。head()df。info()2。选择子集第一列为数据编号,已有索引故删除df。drop(columnsUnnamed:0,inplaceTrue)df。info()3。删除重复值godf。duplicated()。sum()
  数据无重复值4。缺失值处理df。isnull()。sum()
  数据无缺失值5。标准化处理df。dtypesDate为对象类型,需要标准化为日期类型格式df。Datepd。todatetime(df。Date,formatdmY)df。dtypes6。异常值处理df〔〔Quantity,SalesAmount〕〕。describe()
  购买数量存在小于1是由于称重单位不足1所致,非异常值六、分析内容1。消费情况按月分析
  (1)每月消费总金额趋势分析df〔Month〕df。Date。astype(datetime64〔M〕)df。head()groupedmonthdf。groupby(Month)groupedmonth。SalesAmount。sum()2018年1月数据可能统计不全,不纳入趋势分析groupedmonth。SalesAmount。sum()。head(12)。plot()由上图可知:消费金额波动较大,其中第一季度保持持续上升,后续波动较大,整体呈上升趋势
  (2)每月交易次数趋势分析groupedmonth。TransactionID。nunique()。head(12)。plot()由上图可知:交易次数波动较大,前期呈上升趋势,五月之后交易次数开始下降,在八月降至最低值,后续开始波动回升,在十二月份重回峰值
  (3)每月商品购买数量趋势分析groupedmonth。Quantity。sum()。head(12)。plot()由上图可知:商品购买数量波动较大,整体趋势同交易次数保持一致
  (4)每月消费人数趋势分析groupedmonth。CustomerID。nunique()。head(12)。plot()由上图可知:每月购买人数可分简单为三个阶段,15月呈持续上升趋势,68呈持续下降趋势,912月呈波动上升趋势2。用户分布分析
  (1)新用户分布groupedcustomerdf。groupby(CustomerID)groupedcustomer。Date。min()。valuecounts()。plot()由上图可知:新用户获取不稳定,波动较大,整体有略微下降趋势groupedcustomer。Month。min()。valuecounts()。plot()由上图可知:按月统计,每月新用户用户数有明显下降趋势。说明新用户获取呈大幅下降趋势,需要引起注意,适当增加营销活动提升新用户的获取
  (2)一次消费及多次消费用户占比分析仅消费一次用户占比(groupedcustomer。TransactionID。nunique()1)。sum()df。CustomerID。nunique()由计算得:存在一半的用户只进行了一次消费groupedmonthcustomerdf。groupby(〔Month,CustomerID〕)每个用户每月的第一次购买时间datamonthmindategroupedmonthcustomer。Date。min()。resetindex()每个用户的第一次购买时间datamindategroupedcustomer。Date。min()。resetindex()通过CustomerID联立两表mergeddatepd。merge(datamonthmindate,datamindate,onCustomerID)mergeddate。head()Datex等于Datey则为每月新用户((mergeddate。query(DatexDatey))。groupby(Month)。CustomerID。count()mergeddate。groupby(Month)。CustomerID。count())。plot()由上图可知:每月新用户占比整体呈下降趋势,结合每月消费人数趋势可知,第四季度消费人数有上升趋势,故期间复购人数有所提升3。用户分层分析
  (1)RFM分层分析pivotrfmdf。pivottable(indexCustomerID,values〔Date,TransactionID,SalesAmount〕,aggfunc{Date:max,TransactionID:nunique,SalesAmount:sum})pivotrfm〔R〕(pivotrfm。Date。max()pivotrfm。Date)np。timedelta64(1,D)pivotrfm。rename(columns{TransactionID:F,SalesAmount:M},inplaceTrue)deflabelfunc(data):labeldata。apply(lambdax:1ifx0else0)labellabel。Rlabel。Flabel。Mlabels{111:重要价值客户,011:重要保持客户,101:重要发展客户,001:重要挽留客户,110:一般价值客户,010:一般保持客户,100:一般发展客户,000:一般挽留客户}returnlabels〔label〕pivotrfm〔label〕pivotrfm〔〔R,F,M〕〕。apply(lambdax:xx。mean())。apply(labelfunc,axis1)pivotrfm。label。valuecounts()。plot。barh()pivotrfm。groupby(label)。M。sum()。plot。pie(figsize(6,6),autopct3。2f)pivotrfm。groupby(label)。agg(〔sum,count〕)
  由上表及图可知:销售额主要来源重要保持客户,人数占比最高的为一般发展客户重要保持客户:销售额的主要来源,近期有消费,且消费高,消费频率不足,可以适当举行营销活动,提升此层客户的购买频率重要价值客户:销售额的第二来源,近期有消费,消费高,频率高,尽可能使该层客户保持现状重要发展客户:消费以及消费频次高,近期没有消费,可以使用适当策略召回用户,参与消费重要挽留客户:消费高,但频次低且近期未消费,处在流失的边缘,可以通过适当活动,使其参与到消费中来,防止流失一般价值客户:消费低,消费频率高且近期有消费,可以使用优惠券等形式活动刺激该层客户的消费,提升其消费额一般发展客户:人数占比最高,近期有消费,但消费额以及消费频次不高,考虑到人数占比高,可以适当举办活动提升消费频次和消费额一般保持客户:在成本与资源控制下,酌情考虑一般挽留客户:在成本与资源控制下,酌情考虑
  (2)用户状态分层分析pivotedstatusdf。pivottable(indexCustomerID,columnsMonth,valuesDate,aggfunccount)。fillna(0)defactivestatus(data):status〔〕foriinrange(len(data)):若本月没有消费ifdata〔i〕0:iflen(status)0:ifstatus〔i1〕unreg:status。append(unreg)else:status。append(unactive)else:status。append(unreg)若本月有消费else:iflen(status)0:ifstatus〔i1〕unreg:status。append(new)elifstatus〔i1〕unactive:status。append(return)else:status。append(active)else:status。append(new)statuspd。Series(status,indexdata。index)returnstatusactivestatuspivotedstatus。apply(activestatus,axis1)activestatus。replace(unreg,np。nan)。apply(lambdax:x。valuecounts())。fillna(0)。T。apply(lambdax:xx。sum(),axis1)。plot。area()
  由上图可知:新用户:新用户占比呈明显下降趋势,说明拉新运营不足活跃用户:在二月占比达到最高,后续呈缓慢下降趋势,说明消费运营正在下滑不活跃用户:不活跃用户呈明显上升趋势,客户流失较为明显回流客户:有缓慢上升趋势,说明召回运营不错4。用户生命周期分析
  (1)用户生命周期分布构成用户生命周期研究的数据样本需要消费次数2次的用户clv(groupedcustomer〔〔SalesAmount〕〕。sum())〔groupedcustomer。TransactionID。nunique()1〕clv〔lifetime〕(groupedcustomer。Date。max()groupedcustomer。Date。min())np。timedelta64(1,D)clv。describe()由上表可知:消费一次以上的用户平均生命周期为116天,用户生命周期内平均消费金额为121。47元clv〔lifetime〕。plot。hist(bins50)
  由上图可知:生命周期在090天内的用户较多,说明生命周期短的客户占比较高,90天内流失率较高,此部分用户可以作为运营重点,延长这些用户的生命周期;生命周期在90250之间的分布较为均匀,这也是大多数用户的生命周期,可以刺激这些用户的消费,使其在生命周期内提升消费金额;生命周期大于250天的人数极少,说明生命周期较长的忠诚客户占比不高。
  (2)用户生命周期价值分布clv〔SalesAmount〕。plot。hist(bins50)
  由上图可知:绝大部分用户生命周期内价值在500以内,且其中大部分在100以内,存在较大极值拉高均值,数据向右偏斜。
  (3)用户生命周期及其价值相关关系plt。scatter(xlifetime,ySalesAmount,dataclv)
  由上图可知:用户生命周期与其期间客户价值不存在线性关系,当生命周期在300天内,部分生命周期较长用户贡献的价值高于生命周期较短的用户;当生命周期大于300天,存在部分用户贡献价值较少,由于数据量不足等原因,结果仅供参考5。回购率与复购率分析
  (1)复购率分析groupedmonthcustomercustomermonthagaingroupedmonthcustomer。nunique()customermonthagain每月消费次数大于1的用户数customermonthagaingroupedmonthcustomer。nunique()。query(TransactionID1)。resetindex()。groupby(Month)。count()。CustomerIDcustomermonthagain每月消费用户数customermonthgroupedmonth。CustomerID。nunique()每月复购率(customermonthagaincustomermonth)。plot()customermonth(customermonthagaincustomermonth)由上图可知:复购率在25上下浮动,说明每月有25的用户会进行多次消费;前三个月的复购率有所下降,后续有所回升,整体有上升趋势,应结合本身商务模式,决定进一步提升复购率还是注重新用户的获取。最后一月由于数据量不足,结果以真实数据为主。
  (2)回购率分析1表示前90天消费且本月回购0表示前90天消费本月未回购nan表示前90天未消费defbuyback(data):status〔np。nan,np。nan,np。nan〕foriinrange(3,len(data)):本月购买ifdata〔i〕1:前90天购买if(data〔i1〕1ordata〔i2〕1ordata〔i3〕1):status。append(1)前90天未购买else:status。append(np。nan)本月未购买else:前90天购买if(data〔i1〕1ordata〔i2〕1ordata〔i3〕1):status。append(0)前90天未购买else:status。append(np。nan)statuspd。Series(status,indexdata。index)returnstatusbackstatuspivotedstatus。apply(buyback,axis1)backstatus。head()(backstatus。sum()backstatus。count())。plot()由上图可知:90天内回购率,即90天内重复购买率在10以下,说明目前商店处于用户获取模式,然而由前面分析可知,新用户获取呈下降趋势,目前商店并不健康,当前阶段应当将重心放在新用户获取上,6。商品关联规则挖掘
  (1)分析热销商品取出销量排名前10的商品类型hotcategorydf。groupby(SKUCategory)。count()。SalesAmount。sortvalues(ascendingFalse)〔:10〕。resetindex()plt。barh(hotcategory。SKUCategory,hotcategory。SalesAmount)热销商品占比hotcategory〔percent〕hotcategory。SalesAmount。apply(lambdax:xhotcategory。SalesAmount。sum())plt。figure(figsize(6,6))plt。pie(hotcategory。percent,labelshotcategory。SKUCategory,autopct1。2f)plt。show()categorylistdf。groupby(TransactionID)。SKUCategory。apply(list)。values。tolist()fromapyoriimportaprioriminsupportvalue0。02minconfidencevalue0。3resultlist(apriori(transactionscategorylist,minsupportminsupportvalue,minconfidenceminconfidencevalue,minleft0))result
  由上结果可得:‘FU5’‘LPF’:支持度为约2。1,置信度约为49。5。说明同时购买这两类商品发生的可能性为约2。1,先购买FU5类型产品后,同时购买LPF类型产品的概率为49。5‘IEV’‘LPF’:支持度约为3。1,置信度约为48。9。说明同时购买这两类商品发生的可能性约为3。1,先购买IEV类型产品后,同时购买LPF类型产品的概率约为48。9
  ‘LPF’‘IEV’:支持度约为3。1,置信度约为43。3。说明同时购买这两类商品发生的可能性约为3。1,先购买LPF类型产品后,同时购买IEV类型产品的概率约为43。3‘OXH’‘LPF’:支持度约为2。0,置信度约为48。1。说明同时购买这两类商品发生的可能性约为2。0,先购买IEV类型产品后,同时购买LPF类型产品的概率约为48。1尾语
  好了,我的这篇文章写到这里就结束啦!
  有更多建议或问题可以评论区或私信我哦!一起加油努力叭()
  喜欢就关注一下博主,或点赞收藏评论一下我的文章叭!!!
投诉 评论 转载

京东年货节掀抢购热潮,山东购买力位居全国第五新春将至,属于春节的热闹氛围早已萦绕全国。要问国人的腊月都在做些什么,采买年货绝对是重要一项!京东年货节已于1月初全面开启,琳琅满目的优质年货商品引发国内消费者的抢购热潮。在这……python对零售商店进行数据分析,看看用户消费回购率等数据前言嗨喽!大家好呀,这里是魔王一、项目背景通过扫描零售商店电子销售点个别产品的条形码而获得的消费品销售的详细数据。这些数据提供了有关所售商品的数量、特征和价值以及价……能否赶上9月发布?报道称苹果新款AppleWatch全新设计财联社(上海,编辑史正丞)讯,根据《日经新闻》9月1日援引业界人士报道,预期将在九月发布会上与新款iPhone一起公布的最新款AppleWatch,由于重新设计的外观和工艺太过……三星GalaxyS21FE(8GB128GB5G版)怎么样?三星GalaxyS21FE三星GalaxyS21FE(8GB128GB5G版)最新价格是4599元,日常使用还是很流畅的手机!上市时间为2022年01月。首先,我们……vim多文件操作打开命令vimfile1file2。。。filen或者vim已经启动时::openfile:efile可以再打开一个文件,并且此时vim里会显示出file文件的内容……M1X芯片MiniLED屏幕加持!新款MacBook已进入量在去年,苹果更新了MacBookAirPro13英寸版本,并正式带来了M1芯片,该芯片凭借着出色的性能以及低功耗的表现,引起了数码圈的广泛关注。由于采用了全新ARM架构,……科学家预测太阳在30亿年后将变为红巨星并吞噬地球,那时地球将确实,根据科学家对太阳燃烧速度的判断,太阳将在30亿年(也有说是35亿年后)成为红巨星,那也意味着太阳走向死亡。不过太阳走向死亡的过程也是非常缓慢的,成为红巨星后的膨胀也会很慢……杨开忠第四产业,未来已来当前,新一轮科技浪潮正在席卷全球,突破性技术集群不断涌现,产业形态以智能化、网络化、数字化为核心特征,正在开启前所未有的巨变。可以说,世界经济即将到达新的历史分流节点,正如经济……热水器洗澡为什么会触电会电人,不会跳闸吗?大家好,我是专注家居和装修知识分享的家居杂坛。在这里,我会尽可能地把我所知道的一些知识分享给大家,希望大家能够支持!其实说句公道话,电热水器的安全系数是非常高的。但是也还……PixelmatorPhoto开放预订,即将登陆iPad去年10月的iPadPro发布会上,一款专业图片处理应用PixelmatorPhoto首次亮相,为展示新iPadPro强大的生产力助阵。而近日PixelmatorPhoto已上……互联网人身险新规发酵超200家保险业机构更新产品信息大缩水后财联社(北京,记者杨芮)讯,备受业界关注的互联网人身险新规落地后,正给2022年的保险市场带来不一样的变化。2022年伊始,《关于进一步规范保险机构互联网人身保险业务有关……青海湖每年增加4个西湖水量,未来有可能冲出峡谷流入黄河吗?地球作为一个蔚蓝色的星球,除了源于其丰富的海水资源外,还源于其分布着的众多江河湖泊。而随着人类社会的不断发展,这其中的许多湖泊都开始日益枯竭,同时面积也在不断地缩小。地球……
苹果XS相比苹果X哪个好?华为3nm芯片麒麟9010新爆料小米12Ultra或下月发布雷军icon将抛弃性价比那些入过狱的商界大佬有人80岁欲东山再起,有人成为中国首富实体店怎么引流?宝骏RS5于4月11日上市将发布新品牌战略小米太难,MIX4未发布遭遇二连击,技术太领先也是问题低调沉稳更用心华为mate20优缺点。个人主观理由跨境电商的收款方式有哪些?魅蓝和高通首部合作的手机魅蓝note6大家觉得中国移动的宽带怎么样?智能化的理查德米勒手表,你见过吗?旅游景点作文我的小妹妹MyLittleSister年夜饭可以约定婚前财产归属吗经典人生励志座右铭没盼到庆余年2,张若昀新片受期待!主创配置高,收视不愁消消乐限定款真无线耳机开启预售到手价黎瑞恩老公(黎瑞恩现在状况)哪些地区容易发生泥石流世界最大裸体小镇英国圣奥尔本斯全村裸体醉驾三种不起诉情形是什么我的世界

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利