目录背景一、理解数据二、提问三、数据清晰四、数据指标分析五、可视化分析六、RFM模型7.总结和建议 码字不容易。如有参考,请注明出处。谢谢你!
UserBehavior它是阿里巴巴提供的淘宝用户行为数据集,用于行为数据集。数据集包括字段用户id、品类ID、商品ID、行为时间和购买行为。利用电子商务运营指标体系中常见的运营指标AARRR通过流量指标(日常)PV、UV、人均页面访问、跳出率、访客成本等。)、转换指标(购物车指标、订单指标、支付指标、交易指标等。)、客户价值指标(新客户数量、新消费成本、客户单价、最新购买时间R、消费频率F、消费金额M等),商品类指标(sku数、spu数等)、风控类指标(卖家评论、投诉情况)、市场竞争指标(市场占有率)等对淘宝用户进行新增用户分析、转化分析、留存分析、复购分析、流失分析、用户价值RFM分析。
详见电商运营指标体系:木子李:电商运营指标体系
一、理解数据自天池网站数据集选:https://tianchi.aliyun.com/dataset/dataDetail?dataId= ** 9
数据集包括2017年11月25日至2017年12月3日约100万随机用户的所有行为(包括点击、购买、额外购买和喜爱)。数据集的组织形式和MovieLens-20M类似地,即数据集的每一行都表示用户行为,用户ID、商品ID、商品类目ID、行为类型和时间戳是由逗号分开的。由于数据量很大,选择了200多万条数据作为分析,每列数据集的详细描述如下:
本文章使用Mysql 清理和分析数据。
注:由于字段中没有用户注册时间,因此该时间段的初始使用时间为注册时间,仅用于数据分析思维逻辑的锻炼。
2、电子商务运营指标系统与各种模型分析方法指标之间的关系是什么(点、面、交叉使用)电子商务指标系统的指标分类分为8类。详见:木子李:电子商务运营指标系统。这八类指标可用于多个业务分析模型(如行业分析)-PEST分析方法-4P营销理论、财务分析-杜邦分析方法-AARRR漏斗模型或RFM模型/用户个性化特征需求分割方法/用户身份分割层、业务面试问题-逻辑树分析方法),用这些指标(点)来衡量分析模型(面)的每一点。图像隐喻:例如,我们学到的书有很多种,中文书、数学数学和英语书。这些书分为小学语文书、中学语文书、小学数学书、中学数学书、小学英语书和中学英语书;这类似于类指标中的小指标;然而,小学是否使用小学分析方法,即利用小学数学书、小学语文书和小学英语书来衡量小学分析方法;中学是利用中学分析方法,即中学数学书、中学语文书和中学英语书。回到数据集中问题,数据集中字段:用户ID、商品ID、商品类目ID、从五个字段分析以下问题:行为类型和时间戳:
新用户分析:日新用户数量是多少?流量分析:日pv,日uv ,人均页面访问量是多少?保留分析:第二天保留率、3天保留率和7天保留率是多少?回购分析:回购率是多少?转换分析:购物车转换率?收集转换率?购买转换率?用户价值RFM分析:筛选八类用户,并根据这八类用户进行营销策略。商品分析:哪些类别很受欢迎?哪些商品很受欢迎?3、数据清理3.1 删除重复数据
#1.删除重复数据#1)增加字段#alter table `userbehavior-2` add ID int(255) not null;#2)添加数据-自增长见图#3)删除重复数据DELETE from `userbehavior-2` where ID NOT IN (SELECT ID from (select min(ID) from `userbehavior-2` group by userid,time,behavior) as a)相关参考:mysql只保留一个删除重复记录(一个简单的句子)sql):https://blog.csdn.net/t8116 ** 520/article/details/82220494如果出现Err] 3 - Error writing file 'C:WindowsServiceProfilesNetworkServiceAppDataLocalTempMYA0E8.tmp' (Errcode: 28 - No space left on device)说明子句嵌套造成的内存数据条溢出可以使用limit分层处理7833.71s,无重复数据;
3.2 日期格式化
时间戳转换为日期格式https://blog.csdn.net/u013372487/article/details/48131589
#转换检测日期select FROM_UNIXTIME(time,'%Y-%m-%d') as date from `userbehavior-2`四、数据指标分析4.1 日新增用户数
select firstday,sum(case when by_day=0 then 1 else 0 end) as 'day_0'from (select userid ,time ,firstday ,DATEDIFF(time,firstday) as by_day from(select b.userid , b.time ,c.firstday from (select userid ,FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2`group by 1,2) as bINNER JOIN(select userid,min(time) as firstday from (select userid ,FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2`group by 1,2) as agroup by 1) as con b.userid=c.useridGROUP BY 1,2ORDER BY 1,2) as dgroup by 1,2order by 1,2) as ewhere firstday between '2017-11-25' and '2017-12-04'group by 1order by 1;4.2 日PV
select time ,count(behavior) as '日pv'from ((select userid ,behavior,FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2`)as user1)where behavior='pv'GROUP BY timehaving time>'2017-11-24'and time <='2017-12-03';4.3 日UV
select time ,count(distinct userid) as '日uv' from ((select userid ,behavior,FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2`) as user1)where behavior='pv'GROUP BY time H ** ING time >='2017-11-25'and time<='2017-12-03'4.4 人均页面访问量
#日pv/日uvselect time ,count(behavior)/count(DISTINCT userid) as '.人均页面访问数'from ((select userid ,behavior,FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2` ) as user1)where behavior='pv'group by time having time>='2017-11-25' and time<='2017-12-03'4.5 时间点分析
create table user1 AS(select * ,FROM_UNIXTIME(time ,'%Y-%m-%d') as ymd,FROM_UNIXTIME(time,'%H') as h from `userbehavior-2`);select h,sum(case when behavior='pv' then 1 else 0 end ) as 'pv',sum(case when behavior='cart' then 1 else 0 end) as 'cart',sum(case when behavior='fav' then 1 else 0 end) as 'fav',sum(case when behavior='buy' then 1 else 0 end) as 'buy'from user1group by h;4.5 日购买单数
select time ,sum(购买) as 三九;日购单数' from (select FROM_UNIXTIME(time,'%Y-%m-%d') as time ,count(behavior) as '购买' from `userbehavior-2`where behavior='buy'group by time) as agroup by time;4.6 留存分析
第二天保留率、3天保留率和7天保留率的想法:首先找出每个用户的使用时间和第一次使用时间,计算两者之间的间隔天数,将这些间隔天数分段,即第一次使用后的第二天保留人数、第三天保留人数和第七天保留人数;
1)获取用户、用户和用户的第一次使用时间
#1.提取用户和使用时间time#select userid ,FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2`#group by 1,2;#2. 提取初始使用时间fristday#select userid,min(time) as firstday from #(select userid ,FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2`#group by 1,2) as a#group by 1;#3.将urserid,time ,firstday 合并select b.userid , b.time ,c.firstday from (select userid ,FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2`group by 1,2) as bINNER JOIN(select userid,min(time) as firstday from (select userid , FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2`group by 1,2) as agroup by 1) as con b.userid=c.useridGROUP BY 1,2ORDER BY 1,2;2)第一次使用时间,使用时间,两者间隔天数
#4.第一次使用时间和使用时间的间隔by_dayselect userid , time , firstday , DATEDIFF(time,firstday) as by_day from(select b.userid , b.time , c.firstday from (select userid , FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2`group by 1,2) as bINNER JOIN(select userid,min(time) as firstday from (select userid , FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2`group by 1,2) as agroup by 1) as con b.userid=c.useridGROUP BY 1,2ORDER BY 1,2) as dgroup by 1,2order by 1,2;3)留存人数
#5. 提取字段作为列名,几日留存率select firstday, sum(case when by_day=0 then 1 else 0 end) as 'day_0',sum(case when by_day=1 then 1 else 0 end) as 'day_1',sum(case when by_day=2 then 1 else 0 end) as 'day_2',sum(case when by_day=3 then 1 else 0 end) as 'day_3',sum(case when by_day=4 then 1 else 0 end) as 'day_4',sum(case when by_day=5 then 1 else 0 end) as 'day_5',sum(case when by_day=6 then 1 else 0 end) as 'day_6',sum(case when by_day=7 then 1 else 0 end) as 'day_7',sum(case when by_day=8 then 1 else 0 end) as 'day_8'from (select userid , time , firstday , DATEDIFF(time,firstday) as by_day from(select b.userid , b.time , c.firstday from (select userid , FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2`group by 1,2) as bINNER JOIN(select userid,min(time) as firstday from (select userid , FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2`group by 1,2) as agroup by 1) as con b.userid=c.useridGROUP BY 1,2ORDER BY 1,2) as dgroup by 1,2order by 1,2) as ewhere firstday between '2017-11-25' and '2017-12-04'group by 1order by 1;4)留存率
#6.留存率select firstday , day_0,concat(cast((day_1/day_0)*100 as DECIMAL(18,2)),'%') as 'day_1%',concat(cast((day_2/day_0)*100 as DECIMAL(18,2)),'%') as 'day_2%',concat(cast((day_3/day_0)*100 as DECIMAL(18,2)),'%') as 'day_3%',concat(cast((day_4/day_0)*100 as DECIMAL(18,2)),'%') as 'day_4%',concat(cast((day_5/day_0)*100 as DECIMAL(18,2)),'%') as 'day_5%',concat(cast((day_6/day_0)*100 as DECIMAL(18,2)),'%') as 'day_6%',concat(cast((day_7/day_0)*100 as DECIMAL(18,2)),'%') as 'day_7%',concat(cast((day_8/day_0)*100 as DECIMAL(18,2)),'%') as 'day_8%'from (select firstday, sum(case when by_day=0 then 1 else 0 end) as 'day_0',sum(case when by_day=1 then 1 else 0 end) as 'day_1',sum(case when by_day=2 then 1 else 0 end) as 'day_2',sum(case when by_day=3 then 1 else 0 end) as 'day_3',sum(case when by_day=4 then 1 else 0 end) as 'day_4',sum(case when by_day=5 then 1 else 0 end) as 'day_5',sum(case when by_day=6 then 1 else 0 end) as 'day_6',sum(case when by_day=7 then 1 else 0 end) as 'day_7',sum(case when by_day=8 then 1 else 0 end) as 'day_8'from (select userid , time , firstday , DATEDIFF(time,firstday) as by_day from(select b.userid , b.time , c.firstday from (select userid , FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2`group by 1,2) as bINNER JOIN(select userid,min(time) as firstday from (select userid , FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2`group by 1,2) as agroup by 1) as con b.userid=c.useridGROUP BY 1,2ORDER BY 1,2) as dgroup by 1,2order by 1,2) as ewhere firstday between '2017-11-25' and '2017-12-04'group by 1order by 1) as fgroup by 1order by 1;4.7 复购率
复购率=一段时间内,消费次数大于等于两次以上的人数/总的用户数
#创建消费频数视图create view fasselect DISTINCT userid , count(behavior) as '购买次数' from `userbehavior-2`where behavior='buy' and (select time from (select userid,FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2` limit 1) as user1) between '2017-11-25'and '2017-12-03'group by useridhaving 购买次数>=2;#消费用户数select count(DISTINCT userid) from `userbehavior-2` where behavior='buy';#复购率select (select count(*) from f)/(select count(DISTINCT userid) from `userbehavior-2` where behavior='buy') as '复购率' from `userbehavior-2` limit 1;#复购频数分类select `购买次数`,count(*)from f group by 购买次数 ;4.8 转化率
#转化率select CONCAT(cast((select count(*) from `userbehavior-2` where behavior='cart')/(select count(*) from `userbehavior-2` where behavior='pv')*100 as DECIMAL(18,2)),'%') as '购物车转化率' ,CONCAT(cast((select count(*) from `userbehavior-2` where behavior='fav')/(select count(*) from `userbehavior-2` where behavior='pv')*100 as DECIMAL(18,2)),'%') as '收藏转化率' ,CONCAT(cast((select count(*) from `userbehavior-2` where behavior='buy')/(select count(*) from `userbehavior-2` where behavior='pv')*100 as DECIMAL(18,2)),'%') as '购买转化率' from `userbehavior-2` where(select FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2` limit 1) BETWEEN '2017-11-25' and '2017-12-03'limit 1;1)添加购物车和收藏的品类/商品分析
#添加购物车商品分析select catid as '添加购物车品类', count(catid) as '添加购物车品类数'from `userbehavior-2`where behavior='cart'group by catid order by count(catid) desc;select itemid as '添加购物车商品',COUNT(itemid) as '添加购物车商品数' from `userbehavior-2` where behavior='cart' group by itemidorder by count(itemid) desc;#收藏商品分析select catid as '收藏品类', count(catid) as '收藏品类数'from `userbehavior-2`where behavior='fav'group by catid order by count(catid) desc;select itemid as '收藏商品',COUNT(itemid) as '收藏商品数' from `userbehavior-2` where behavior='fav' group by itemidorder by count(itemid) desc;#购买商品分析select catid as '购买品类', count(catid) as '购买品类数'from `userbehavior-2`where behavior='buy'group by catid order by count(catid) desc;select itemid as '购买商品',COUNT(itemid) as '购买商品数' from `userbehavior-2` where behavior='buy' group by itemidorder by count(itemid) desc;4.9 商品分析
#品类分析select catid , count(catid) as '品类购买数'from `userbehavior-2`where behavior ='buy'group by catidorder by 品类购买数 desc; #商品分析select itemid , count(itemid) as '商品购买数'from `userbehavior-2`where behavior ='buy'group by itemidorder by 商品购买数 desc;
五、可视化分析
根据第四部分的各项指标分析,将各项指标融入到AARRR分析模型中的各个板块,相应的分析各个环节的情况。
5.1 日新增分析
整体概况:
日新增人数随着时间,增长幅度逐日降低,在2017-12-01以后基本没有新增人数;2017-11-25至2017-12-03期间,用户从4095增长至5693,新增涨幅比为39%,其中在2017-11-26日和27日增长良好,可以探究下日新增人数增长的原因;分析新增用户的渠道曝光量、渠道转化率,渠道ROI,分析哪些渠道的获客效果最好,并加大投入流量和资金。(缺乏字段不予分析)措施:
通过各种市场营销活动和渠道推广来获取用户,进行拉新引流活动。目前,淘宝用户主要是和拼多多争农村新用户,因此可以结合农村的特点,制定符合的拉新策略;
5.2 流量分析
该部分主要考察日活跃人数和这段期间的活跃率,可以考察出用户对淘宝产品的粘性;其次用流量指标PV/UV考察网页的活跃度;
用户行为在时间点的分析整况:
日pv在11月25日到12月1日,pv和uv基本保持稳定,12月2日点击量猛增,较前一日增长26.3%,随后点击量略下降;且uv出现相同的增长趋势,日UV线的颜色变化代表日活跃人数的高低变化;整体人均页面访问量处于稳定变化;人均页面访问数基本保持稳定在13左右,用户与网站的粘性良好,侧面反应出网页未出现重大问题。用户点击、加购、收藏、购买的行为趋于一致,集中时间段在晚上21-23时间段,因此商家可以在该时间段加大流量投放力度,推送广告,有助于转化率提升同时用户偏爱添加购物车,收藏意识相对薄弱分析:
日pv在11月27日最低54275,日新增人数为363人,同比看日uv下降29人,人均访问量却最低12.858;同样观察次日11月28日pv为55761,即使日uv仍然继续下降27,点击量却回升,可以用A/Btest测试调研是何原因出现27日和28日的反转现象。日pv在12月2日最高75949,同比看日新增人数仅为1,但日uv增长1356,人均访问页面变化较小,则说明老客日活跃人数增多导致pv猛增26.3%;可以调研该日是否举行促销、促活活动,活动的具体方式是什么,可做市场活动复盘,记录让日活跃人数暴涨的原因及措施;商家可以改善收藏页面(收藏店铺,收藏宝贝)的设计按钮,以及收藏后的网页功能模块,实时添加商品价位、可用券、还差多少可以用券优惠多少的提醒、以及相关购物篮商品,引导和激励用户完成商品购买。5.3 转化分析
整体概况:
用户添加购物车的转化率为6.12%,收藏率为2.99%,说明用户群体一种可能是不习惯或者没有意识在浏览后添加购物车或者收藏;二是用户浏览后直接下单支付,省去购物车和收藏环节;三是用户对浏览的商品不敢兴趣,没有吸引力。用户支付成功转化率仅为2.25%,转化率低;5.3.1 应用漏斗图分析对下述用户购买不同行为路径进行分析
part1:购物车-购买路径分析
select count(distinct userid) as '点击人数' from user1 where behavior='pv';select count(distinct userid) as '加购人数' from user1 where behavior='cart';select count(distinct a.userid) as '点击加购后购买' from (select distinct userid,itemid,catid from user1 where behavior='buy') as ainner join (select distinct userid,itemid,catid from user1 where behavior='cart') as b on a.userid=b.userid and a.itemid=b.itemid and a.catid=b.catid;part2:收藏-购买路径分析
select count(distinct userid) as '收 ** 数' from user1 where behavior='fav';select count(distinct a.userid) as '点击收藏后购买' from (select distinct userid,itemid,catid from user1 where behavior='buy') as ainner join (select distinct userid,itemid,catid from user1 where behavior='fav') as b on a.userid=b.userid and a.itemid=b.itemid and a.catid=b.catid;通过转化率分析,继续对用户进行用户画像分析,用户从点击到加购的转化率为75%,再到购买转化率为24%,因此该部分人群的关键节点是购物车到购买的转化率,因此需要适当引导激励该步骤的转化。用户从点击到收藏的转化率仅为39%,是加购的一半,证明用户偏爱加购后购买;收藏后的购买仅为9%,因此该部分人群的关键节点是引导用户去收藏转化率,以便于下次购买的时候直接找到该物品下单,提高购买转化率。针对善于加购和善于收藏的用户群体,同时以消费频次为横轴,利用象限法建立用户分层,对两类不同用户设计不同的运营策略,前者积极引导购物车转化率,后者积极引导收藏建立习惯,增加粘性,进一步转化。5.3.2 用户行为下的商品分析
对添加购物车/收藏、购买用户进行品类和商品分析,对其添加购物车和收藏、购买的,一定是意向商品,分析用户钟爱的哪些品类和商品,对接下来的拉新促活、促销活动具有参考意义;
通过对用户添加购物车、收藏和购买的商品和品类进行分析,发现购物车、收藏行为所针对的商品、种类和购买行为所针对的商品、种类出奇的一致,因此做用户画像分析时,不仅仅只考虑购买人,还应该把添加购物车和收藏的用户进行用户画像分析,这样得出的结论更加具有充分性。最受欢迎的前三类品类是4756105, 4145813,,982926;最受欢迎的前三商品是2331370,1535294, 16362565.4 留存分析
整体概况:
横轴代表时间,纵轴代表每天活跃人数,最外面的折线代表总人数在不断增长,尤其在初期2017-11-25日积累了一定数量的用户量,在此基础上,不断拉新用户和流失用户;图形中的每个颜色,代表新用户初次使用时间,两者间的高度代表每日新用户增长人数;分析:
横向:每日新增的用户数有着相同的趋势,随着时间的变化用户在次日的留存率大大降低,留存率均在57-78%左右,之后用户量逐渐平缓保持在60-70%的留存率,在12月2日留存率猛增到90%以上;纵向:在2017-11-25日积累的用户基础上,每日会有新用户进来即两个颜色间的高度,但是高度逐渐放缓甚至在2017-12-01日未有新用户出现,2017-12-02仅有1个新用户。从日活跃量和日新增人数上分析,日活跃量在12-02日举办的是促活活动,盘活了近几日加进来用户的活跃度,流失掉的老用户再次成为日活跃用户;但是拉新活动未准备,导致日新增人数增长几乎停滞;整体最外侧曲线代表留存下的用户量持续增长,若想持续增长,需要举办引流拉新、促活活动将用户留下来。为什么提高留存率?
留存率在经过一段时间后,会趋向于稳定,将长期使用的用户筛选出来,作为忠实用户;本次数据集仅8天,故无法推断出长期稳定的留存率;近几年,渠道推广成本越来越高,获客的时间和金钱成本越来越高,如果能将获得的客户留存住,并且使用时间越长,越能提供给持续的现金流,利润也会越高;关注两点:一是使用时间越长;二是提高销售额;最终是提高留存率,将利润面铺开,如果我们的留存做得好,客户就会一直使用我们的产品,一直给我们带来财富。如何提高留存率呢?
可以先做一个用户分群,对比留存人群和流失人群的行为,构建画像,对比两者之间的相异点,使用A/Btest测试检验每一个不同点对用户产生的影响;咨询流失掉的用户走掉的原因,利用逻辑分析树的方法分析竞争对手、产品设计、用户体验、bug等有可能流失掉的原因,从而分析出流失的主要原因;根据流失原因对其进行相应措施补救,并不断验证和改善,最终提升留存率。【注:由于数据集中缺少相关字段,故未做此部分分析】
张溪梦 Simon:你能找到的最深入的留存分析文章 - 留存 · 增长 · Magic Number
5.5 流失分析
part 1: 需求品类和购买品类是否一致?
#需求频率以pv指标去衡量select a.catid , a.需求品类频次, (select count(catid) from user1 where behavior='buy' and catid=a.catid )as '购买品类频次' from (select catid,count(catid) as '需求品类频次' from user1where behavior='pv'group by catidorder by 需求品类频次 DESClimit 10) as a ;#购买频率以buy指标去衡量select a.catid , (select count(catid) from user1 where behavior='pv' and catid=a.catid )as '需求品类频次', a.购买品类频次 from(select catid,count(catid) as '购买品类频次' from user1where behavior='buy'group by catidorder by 购买品类频次 DESClimit 10) as a;需求品类排名购买品类排名需求品类频次,意指商家推送广告的流量多,点击率就会提高。ROI=用户贡献消费额/获客费用,我们姑且用ROI的类似的概念解决性价比的问题;ROI=购物品类频次/需求品类频次,通俗'性价比',推送的广告多,转化率最好也要高,满足用户需求ROI越高证明投放的广告越满足用户的购买要求,匹配程度越高;反之越低,证明投放广告并没有带来较高的转化率,匹配程度低,需要改善。需求品类排名图中,ROI最低的是2355072,其次是2355072,突出表现的是4801426购买品类排名图中,ROI最低的4756105,此品类是投放量最多的品类,但购买力却很差,ROI最高的是4159072,其次是14 ** 116,2735466,2885 ** 2需求品类vs购买品类整体概况(vs对比):
需求品类排名中ROI最低的品类是2355072,投放量是17903,购买数仅为62;相比较购买数排名第一的品类2735466,投放量仅为7590 ,是2355072的42%,却购买次数是其3.7倍;购买品类排名中ROI最高的品类是4159072,投放量为1285,购买数为100,ROI高达7.8%,是需求排名第一的品类4756105的13倍。需求品类vs购买品类对比表中需求品类排名中前10名中仅有50%的品类处在购买排名前十中,而购买力较强的品类2735466/14 ** 116/2885 ** 2/2 ** 0118,4159072投放量却很低。结论:
整体看两图,运营商对商品的投放,推送机制存在严重的问题;未能引导用户搜索到核心商品是流失率高,转化率低的主要原因。其中优质内容的推送+匹配机制做的不合理,没有实现效益最大化,客户未能精准的找到想要找到的商品品类。应该继续考虑RFM模型中的重要价值客户的需求和购买是不是也不一致?措施:
减少2355072、3607361、2520377、4756105的投放量,适当增加2735466、14 ** 116、2885 ** 2、2 ** 0118、4159072的投放量对不同价值的用户针对性的精准投放商品广告完善推送匹配机制,挖掘优质内容、优质商品推送给精准用户选择在晚上21-23点加大投放量,引导用户找到合适的商品,提高转化率。5.6 复购分析
在2017-11-25到2017-12-03间的复购率为66.45%,其中复购次数集中在2-8次,最多的是2次占比是35.5%,超过8次占比仅为5.9%,最高复购次数是72次,有可能是异常数据,需要进一步核实;针对复购次数8次以上的用户重点观察,极大有可能是重要价值客户,对其进行重点维护;六 RFM模型本专栏有关于RFM的详细介绍,以及用Tableau进行RFM分析的具体详细案例,可参考学习:木子李:用Tableau对用户交易数据进行RFM分析
由于本数据集中没有消费金额,因此可以只分析RF两个值,F是消费频数,在复购率中已经计算出;R是近期消费时间;
1)R等级分类
#1.建立R视图,将近期购买时间提取到R临时表中create view Rasselect userid , FROM_UNIXTIME( ** x(time),'%Y-%m-%d' ) as '近期购买时间' from `userbehavior-2`where behavior='buy' and (select FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2` limit 1 ) between '2017-11-25' and '2017-12-03'group by userid;#检验上述是否正确select userid , FROM_UNIXTIME(time,'%Y-%m-%d' ),behavior from `userbehavior-2`where behavior='buy';#2.建立R等级划分视图,将客户近期购买时间进行等级划分,越接近2017-12-04号R越大;构建R数值型和R字符串型,前者用于后续的计算全体用户的平均值,后者用于计算每个等级的数量;create view R等级划分asselect userid, 近期购买时间 ,(case when datediff('2017-12-04',近期购买时间)<=2 then 5 when datediff('2017-12-04',近期购买时间)<=3 then 4 when datediff('2017-12-04',近期购买时间)<=4 then 3 when datediff('2017-12-04',近期购买时间)<=6 then 2 else 1 end) as 'R' ,(case when datediff('2017-12-04',近期购买时间)<=2 then '5' when datediff('2017-12-04',近期购买时间)<=3 then '4' when datediff('2017-12-04',近期购买时间)<=4 then '3' when datediff('2017-12-04',近期购买时间)<=6 then '2' else '1' end) as 'R值'from R;#mysql计算两个日期之间的天数 - vofill-work - 博客园
2)F等级划分
#1.建立F视图create view fasselect DISTINCT userid , count(behavior) as '购买次数' from `userbehavior-2`where behavior='buy' and (select time from (select userid,FROM_UNIXTIME(time,'%Y-%m-%d') as time from `userbehavior-2` limit 1) as user1) between '2017-11-25'and '2017-12-03'group by useridhaving 购买次数>=2;#2.建立F等级划分create view F等级划分asselect userid, 购买次数,(case when 购买次数<=2 then 1 when 购买次数<=4 then 2 when 购买次数<=8 then 3when 购买次数<=10 then 4 else 5 end) as 'F' ,(case when 购买次数<=2 then '1' when 购买次数<=4 then '2' when 购买次数<=8 then '3' when 购买次数<=10 then '4' else '5' end) as 'F值'from f;3)建立RFM模型
#1.R平均值select ** G(R) as 'R平均值' FROM r等级划分;#2.F平均值select avg(F) as 'F平均值' from f等级划分;#3.用户八大类等级划分,由于该数据没有M值,故只建立了4个分类create view RFMasselect a.*,b.F, b.F值 ,(case when a.R>=3.571 and b.F>=2.0066 then '重要高价值客户'when a.R<3.571 and b.F>=2.0066 then '重要唤回客户'when a.R>=3.571 and b.F<2.0066 then '重要深耕客户'when a.R<3.571 and b.F<2.0066 then '重要挽留客户'end ) as '客户分类'from r等级划分 a, f等级划分 bwhere a.userid=b.userid;#4.客户分类频数分布select 客户分类, count(客户分类) as '频数' from RFMgroup by 客户分类 ;重要价值客户:近期交易的高频率用户占比21%,此用户极有可能发展为忠实用户,留存率高;对这部分高质量高粘性客户,应该加强维持呵护,可以为这些用户制定special的产品logo礼物,以及积分等活动。
重要唤回客户:无近期交易的高频率用户占比5%,近期没有消费过,有可能发展为流失的重要客户,有可能被竞争对手拉过去了,针对这部分客户采取赠送、奖励、红包等方式 唤回, ** 消费,增加粘性。重点发展
重要深耕客户:近期交易的低频率用户占比45%,具有巨大的潜力;根据这部分用户可以根据以往的消费记录,个性化推荐,增加优惠券 ** 消费,增加粘性。
重要挽留客户:无近期交易的低频率用户占比28%,这部分客户很有可能是已经或者即将流失的客户,针对这部分客户找到流失原因,并根据联系方式,尝试联系问其不满意的地方,对有相似特征的群体进行预警,针对其原因进行改善。
七 总结和建议总结:
日新增人数随着时间大幅度减少,以至于12月2日只有1个新人增加;人均活跃数保持在13左右,稳定,网站活跃度良好;12月2日日PV、日UV猛增,较前一日分别提高26.3%、31.5%;转化为日订单量提高18.5%,则说明12月2日做促活活动,盘活老用户;每日新增的用户数有着相同的趋势,随着时间的变化用户在次日的留存率大大降低,留存率均在57-78%左右,之后用户量逐渐平缓保持在60-70%的留存率,在12月2日留存率猛增到90%以上,近几日整体留存比例较高;复购率为66.45%,其中复购次数集中在2-8次,最多的是2次占比是35.5%,超过8次占比仅为5.9%,【这一块应该分析下购买1次的用户是近期活动刚买的还是怎么回事???】【购买次数和人,二八分】用户添加购物车的转化率为6.12%,收藏率为2.99%,说明用户群体一种可能是不习惯或者没有意识在浏览后添加购物车或者收藏;二是用户浏览后直接下单支付,省去购物车和收藏环节;用户支付成功转化率仅为2.25%,转化率低;通过对用户添加购物车、收藏和购买的商品和品类进行分析,发现购物车、收藏行为所针对的商品、种类和购买行为所针对的商品、种类出奇的一致,因此做用户画像分析时,不仅仅只考虑购买人,还应该把添加购物车和收藏的用户进行用户画像分析,这样得出的结论更加具有充分性。最受欢迎的前三类品类是4756105, 4145813,,982926;最受欢迎的前三商品是2331370,1535294, 1636256;重要价值客户:近期交易的高频率用户占比21%;重要唤回客户:无近期交易的高频率用户占比5%;重要深耕客户:近期交易的低频率用户占比45%;重要挽留客户:无近期交易的低频率用户占比28%;建议:
问题一:日新增人数需要提高:可以做拉新活动,对于淘宝成熟的APP,可以通过运营新媒体账号,吸引粉丝并导入到APP里。常用新媒体平台有:微信、微博、今日头条等。也可以发帖推广,通过在其他论坛发软文或硬广,要么用心写好软文,要么花钱联系版主。优先找大平台的垂直领域,或者垂直领域的大平台,如小红书等APP。问题二:召回流失用户:建立流失用户的定义模型,确定怎么样的用户算是流失用户,比如「近期未消费的低频率用户」算是流失。找到用户流失原因,弥补流失问题,发消息召回用户,告知产品最新变化。问题三:提高复购率【哪些产品的复购率高】:对用户添加购物车、收藏、购买,复购率高的商品,可以针对店铺做些修改,产品分类;促销区活动搭配;热销产品;充分的购买信息,商品的展示技巧等,都可以促进用户的重复购买欲。问题四:购买转化率低:利用店铺将用户引流到微信,建立社群,在朋友圈发布促销商品或者新品,利用朋友圈的特点图和视频的方式吸引顾客;该方式是目前电商引流培养精准粉丝的流行方式。问题五:用户RFM分类:对不同类别的用户采用不同的方式 ** 消费。扫码咨询与免费使用
申请免费使用