我是靠谱客的博主 爱撒娇万宝路,最近开发中收集的这篇文章主要介绍1,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、项目背景与意义

随着人口红利的消失,消费市场的用户基础呈断崖式缩减,淘宝、京东、拼多多抢占四五六线城市之举,充分验证了电商行业躺着赚钱的形势已不复存在。在这种形势下,电商行业的下一个十年增长引擎在哪里呢?答案显而易见,越来越多的电商企业选择从原来的注重用户增量的发展转变为对存量用户的精细化运营。本次项目将针对淘宝电商用户的行为数据集进行分析,探索用户生命周期规律,分析用户转化流失情况,寻找高价值用户,为精细化运营做数据支持,从而帮助商家实现营收增长。

二、提出问题

本文将对淘宝电商用户的行为数据进行分析,对此提出以下问题:

1)从用户生命周期角度:结合AARRR模型分析用户的PV、UV等情况,找出用户的活跃规律,并利用群组分析法分析留存情况。

2)从用户消费行为角度:使用漏斗分析,计算用户每个消费阶段的行为转化率情况,并利用假设检验方法进行归因分析。

3)从用户价值角度:结合RFM模型,分析用户价值,针对不同类型的用户精确化运营。

4)从商品角度:分析商品点击量与购买量的关系、整体商品的购买分布情况、复购率情况。

三、分析思路

在这里插入图片描述

四、理解数据

1.数据来源:

阿里巴巴天池

https://tianchi.aliyun.com/dataset/dataDetail?dataId=649&userId=1

该数据集(UserBehavior.csv)包含了2017年11月25日至2017年12月3日之间,有行为的约一百万随机用户的所有行为(行为包括点击、购买、加购、喜欢)。数据集的组织形式和MovieLens-20M类似,即数据集的每一行表示一条用户行为,由用户ID、商品ID、商品类目ID、行为类型和时间戳组成,并以逗号分隔。

由于数据量太大,我选取200万条数据进行项目分析。

2.字段理解
在这里插入图片描述

五、数据清洗

1)选择子集

目前这5列都是有用的数据列,不考虑隐藏某一列

2)列名重命名

原表格没有列名,所以我将列名直接在客户端里改为:user_id,item_id,item_class_id,timestamp,并且设user_id,item_id,timestamp为主键。

3)删除重复值

–重复值查询 通过group by所有字段,如果存在聚合后大于1的值,说明有重复值,否则没有
select *
from userbehaviour
group by user_id, item_id, item_class_id,
user_behave, timestamp
having count(*)>1
在这里插入图片描述
因此,没有重复值。

PS:去重这里有一个注意点:

如果存在重复值,则需求是删除重复值且相同的仅保留一条记录。删除表中多余的重复记录,重复记录是根据单个字段(例如peopleId)来判断,只留有rowid最小的记录。在实习中,我发现我们经常是去时间记录最近的数据,因此可用语句row_number() over(partition by ** order by datetime) 来完成去重工作。

4)缺失值处理

https://pic2.zhimg.com/v2-4d9d8386db2423e304676a653621985d_r.jpg
在这里插入图片描述
通过计算每一列的数目,发现都是200000条
在这里插入图片描述
在这里插入图片描述
因此,不存在缺失值。

同时我统计了各列的不同数值数目:
select count(distinct user_id),count(distinct item_id),count(distinct item_class_id),count(distinct user_behave),count(distinct timestamp)
from userbehaviour
在这里插入图片描述
因此,有19544个用户,629096个商品,6494种商品,4种行为。

5)一致化处理

因为在时间这一列,显示的是时间戳而不是实际的日期和具体时间(以小时为单位),所以我们额外增加三列:日期时间列、日期列、具体小时列去体现该用户此行为的实际时间。
alter table userbehaviour add date_time varchar(255);
update userbehaviour set date_time = FROM_UNIXTIME(timestamp);
alter table userbehaviour add date varchar(255);
update userbehaviour set date = FROM_UNIXTIME(timestamp,’%Y-%m-%d’);
alter table userbehaviour add hour varchar(255);
update userbehaviour set hour = substring(date_time,12,2);
在这里插入图片描述
6)数据排序

不需要进行数据排序

7)异常值处理

因为已经说了该数据集是在2017年11月25日至2017年12月3日之间,我们只需要检查是否日期是在这个时间段之间的就可以了。
–找到最小和最大的日期
select min(date),max(date)
from userbehaviour
在这里插入图片描述
我们发现确实存在异常日期的数据,因此考虑删除它们:
–删除异常日期数据
delete from userbehaviour where date <‘2017-11-25’ OR date >‘2017-12-03’;
在这里插入图片描述
我们删除了991条的异常数据,检查下结果:
–检查在2017年11月25日与12月3日之间的每天数据量
select date, count()
from userbehaviour
group by date
在这里插入图片描述
清洗后数据集的大小概览:
select count(distinct user_id) as 用户数,
count(distinct item_id) as 商品数,
count(distinct item_class_id) as 商品类目数,
count(distinct user_behave) as 行为类型,
count(distinct date) as 天数,
count(
) as 记录数
from userbehaviour
在这里插入图片描述
清洗后,数据记录共有1999009条,其中有19544个用户,628886个商品,6492种商品,4种用户行为:点击、加购物车、收藏、购买。

六、 构建模型

在这一部分中,我们用mysql分析数据,用EXCEL或者Power BI进行可视化。

1.用户生命周期分析

1.1总体用户行为数据情况

从总访问人数、总点击量、成交量、人均浏览量来说:
select count(distinct user_id) as 总访问人数UV,
sum(case when user_behave = ‘pv’ then 1 else 0 end) as 总点击量PV,
sum(case when user_behave = ‘buy’ then 1 else 0 end) as 成交量,
sum(case when user_behave = ‘pv’ then 1 else 0 end)/count(distinct user_id) as 人均浏览量
from userbehaviour
在这里插入图片描述
1.2用户活跃时间模型

1)从日访问人数(日UV)、日点击量(日PV)、日订单成交量、日人均浏览量来说:
select date as 日期,
count(distinct user_id) as 日访问人数UV,
sum(case when user_behave = ‘pv’ then 1 else 0 end) as 日点击量PV,
sum(case when user_behave = ‘buy’ then 1 else 0 end) as 日订单成交量,
sum(case when user_behave = ‘pv’ then 1 else 0 end)/count(distinct user_id) as 日人均浏览量
from userbehaviour
group by date
在这里插入图片描述
我们可以看到每日的UV与PV、日人均浏览量的变化趋势:
在这里插入图片描述
主坐标轴是日UV和PV的单位,次坐标轴是日人均浏览量的单位。
在这里插入图片描述
我们发现日PV和UV、日订单成交量的变化趋势大体一致,在第二个周末都有小幅度地上升,其实在第一个周末可以看到PV和UV也是比其工作日来说是有所增长的,但是第二个周末增长明显,环比增长了35%和30%左右。

为什么两个周末在日PV和UV上有所差别?

通过查阅资料可知,对于第一个周末11月25日和26日,距离双11活动结束不久,在双11活动中购买力大量消耗,后续的PV、UV、成交量有所低迷也是可以理解的。而对于第二个周末12月1日和2日,正是双十二的预热阶段和焕新活动,又带来一定的消费刺激,,使得UV、PV、订单成绩量随之提升。

2)一天内不同时间段的访问人数(UV)、点击量(PV)、订单成交量、人均浏览量是什么样的变化情况:
select hour as 小时,
count(distinct user_id) as 访问人数UV,
sum(case when user_behave = ‘pv’ then 1 else 0 end) as 点击量PV,
sum(case when user_behave = ‘buy’ then 1 else 0 end) as 订单成交量,
sum(case when user_behave = ‘pv’ then 1 else 0 end)/count(distinct user_id) as 人均浏览量
from userbehaviour
group by hour
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
从UV、PV以及订单成交量随时间段的变化趋势来看,用户访问、浏览、购买商品的高峰是晚上的8点到10点,早上的7点到10点是淘宝用户的活跃度增长阶段。

因此,活跃用户的规律如下:用户周末使用淘宝的强度要比平时工作日时大,在活动预热期间,用户的活跃度也会上升,活动结果后的一周时间内用户活跃略微下降;在一天的时段内,晚上8点到10点是淘宝用户活跃的高峰期,早上7点到10点是一个增长期。

1.3用户留存分析——群组分析法

第N日留存率 =第1天新增用户中,在第N天使用过电商平台的用户数/第1天新增用户数;

从11月25日开始到12月3日,将用户按该用户在哪一天作为新增用户(只要有任何一个行为类型就算使用了该)来分组:这样一来有8组用户进行留存率的分析:
#创建一张表格显示所有用户的第一次使用日期和之后使用的日期,与它们之间相差的天数
create table user_time as
select distinct aa.user_id, aa.date, bb.first_date, DATEDIFF(aa.date,bb.first_date) as interval_days
from userbehaviour aa
join
(
select user_id,min(date) as first_date
from userbehaviour
group by user_id
) bb
on aa.user_id = bb.user_id

#查询留存日的用户数量
select aa.first_date,
日新增用户数,
concat(round(第1日留存用户数/日新增用户数,3)*100,’%’) as 第1日留存率,
concat(round(第2日留存用户数/日新增用户数,3)*100,’%’) as 第2日留存率,
concat(round(第3日留存用户数/日新增用户数,3)*100,’%’) as 第3日留存率,
concat(round(第4日留存用户数/日新增用户数,3)*100,’%’) as 第4日留存率,
concat(round(第5日留存用户数/日新增用户数,3)*100,’%’) as 第5日留存率,
concat(round(第6日留存用户数/日新增用户数,3)*100,’%’) as 第6日留存率,
concat(round(第7日留存用户数/日新增用户数,3)*100,’%’) as 第7日留存率,
concat(round(第8日留存用户数/日新增用户数,3)*100,’%’) as 第8日留存率
from(
select first_date,
count(user_id) as 日新增用户数,
sum(case when interval_days=1 then 1 else 0 end) as 第1日留存用户数,
sum(case when interval_days=2 then 1 else 0 end) as 第2日留存用户数,
sum(case when interval_days=3 then 1 else 0 end) as 第3日留存用户数,
sum(case when interval_days=4 then 1 else 0 end) as 第4日留存用户数,
sum(case when interval_days=5 then 1 else 0 end) as 第5日留存用户数,
sum(case when interval_days=6 then 1 else 0 end) as 第6日留存用户数,
sum(case when interval_days=7 then 1 else 0 end) as 第7日留存用户数,
sum(case when interval_days=8 then 1 else 0 end) as 第8日留存用户数
from user_time
group by first_date
order by first_date) aa
group by aa.first_date
在这里插入图片描述
由于本数据集该日期段前后的数据缺失,所以得到率新增用户数不准确。但是大致可以观察到留存率还是偏低的,在12月2日和3日迎来小的留存率上升,符合前面已经验证过的双十二预热与焕新活动带来的用户关注度、活跃度上升的趋势。(这里留存率低的归因分析不细说,本次项目主要是用户行为分析,留存率很大一部分与产品有关,前面对于用户消费偏好分析里讲到推荐系统效果不佳,也是留不住用户的原因之一)

facebook : 40-20-10法则,次日留存率为40%,第7日留存率为20%,第30日留存率为10%,这个产品表现是比较好的。

2.用户消费行为情况分析——漏斗分析

2.1整体用户行为的转化率
#各个行为数
select user_behave,count(*) as nums
from userbehaviour
group by user_behave
在这里插入图片描述
用户行为转化漏斗图:
在这里插入图片描述
用户的行为包括点击、放进购物车、收藏以及购买,用户从点击到加购物车环节的转化率为6.2%,到收藏的转化率为3.21%,再到最终购买的转化率仅为2.25%,也就是说平均每50次点击才会取得1次购买。

2.2不同用户购买途径的转化率

用户从点击到购买是一条购买途径,用户从点击–收藏—购买也是一条途径,下面是对于所有购买途径的汇总:
#创建新表统计用户对商品的行为量
create table test as
select user_id, item_id,
sum(if(user_behave=‘pv’,1,0)) as ‘点击’,
sum(if(user_behave=‘fav’,1,0)) as ‘收藏’,
sum(if(user_behave=‘cart’,1,0)) as ‘加购’,
sum(if(user_behave=‘buy’,1,0)) as ‘购买’
from userbehaviour
group by user_id, item_id

#计算不同路径行为数量

#1.总点击行为量
select count(*)
from test
where 点击>0;

#2.点击–流失行为数
select count(*) as ‘点击-流失’
from test
where 点击>0 and 加购=0 and 收藏=0 and 购买=0;

#3.点击–购买行为数
select count(*) as ‘点击-购买’
from test
where 点击>0 and 加购=0 and 收藏=0 and 购买>0;

#4.点击–加购物车行为数
select count(*) as ‘点击-加购物车’
from test
where 点击>0 and 加购>0 and 收藏=0;

#5.点击–加购物车–流失行为数
select count(*) as ‘点击-加购物车–流失’
from test
where 点击>0 and 加购>0 and 收藏=0 and 购买=0;

#6.点击–加购物车–购买行为数
select count(*) as ‘点击-加购物车–购买’
from test
where 点击>0 and 加购>0 and 收藏=0 and 购买>0;

#7.点击–收藏行为数
select count(*) as ‘点击-收藏’
from test
where 点击>0 and 加购=0 and 收藏>0;

#8.点击–收藏–流失行为数
select count(*) as ‘点击-收藏–流失’
from test
where 点击>0 and 加购=0 and 收藏>0 and 购买=0;

#8.点击–收藏–购买行为数
select count(*) as ‘点击-收藏–购买’
from test
where 点击>0 and 加购=0 and 收藏>0 and 购买>0;

#9.点击–加购物车和收藏行为数
select count(*) as ‘点击-加购物车和收藏’
from test
where 点击>0 and 加购>0 and 收藏>0;

#10.点击–加购物车和收藏–购买行为数
select count(*) as ‘点击-加购物车和收藏–购买’
from test
where 点击>0 and 加购>0 and 收藏>0 and 购买>0;

#11.点击–加购物车和收藏–流失行为数
select count(*) as ‘点击-加购物车和收藏–流失’
from test
where 点击>0 and 加购>0 and 收藏>0 and 购买=0;
在这里插入图片描述
从以上的转化/流失数据来看,转化率角度,流失率很高,高达93%的用户在点击后就流失了。用户点击之后加购物车人数的比例是3.6%,比点击之后加收藏的比例要高,并且加购物车后用户的的购买转化率比收藏的购买转化率来的高,说明对于用户来说,加入购物车产品购买意愿更大,而收藏的商品可能只是用户暂时喜欢的,但是没有很大的购买意愿,所以对于平台来说可以更加可以针对加入购物车里的产品做降价、促销提醒,引导转化,这会更加容易一点。

我们也可以看到如果一个商品既被用户收藏又存在加购物车的行为,那么其购买转化率可高达达到14%,远高于其他路径转化率,所以可以通过适当的营销方式引导用户进行收藏与加购的共同行为。

我们需要对流失率高/转化率低的原因做归因分析:

我们试图分析流失原因,我们用假设检验的分析方法:用业务流程来提出假设。

①假设1:平台上找不到用户所喜欢、所需要的商品种类

收集证据:我们先需要知道用户在淘宝上主要想找寻什么样的商品,我认为商品的点击次数就是商品的搜索量的体现,所以需要通过该指标(商品点击次数)了解哪一类商品比较符合用户的需求,哪一类商品不太被用户所需要。

我们对商品类目ID和PV次数进行建模,得到
#获得不同商品类目的点击量
SELECT item_class_id as 商品类目, count(*) as 点击量
from userbehaviour
where user_behave = ‘pv’
group by item_class_id
order by 点击量 desc
在这里插入图片描述

从图中,可以看出排名前五的商品类目分别是4756105,4145813,2355072,3607361和982926这五类商品,说明用户最想要在淘宝平台上找到这5类商品,在5类商品下,各类中点击数排名前三的商品又为:
#4756105商品类目下的不同商品点击次数
select item_id as 商品ID, count(*) as 点击次数
from userbehaviour
where item_class_id = ‘4756105’ and user_behave = ‘pv’
group by item_id
order by 点击次数 desc

#4145813商品类目下的不同商品点击次数
select item_id as 商品ID, count(*) as 点击次数
from userbehaviour
where item_class_id = ‘4145813’ and user_behave = ‘pv’
group by item_id
order by 点击次数 desc

#2355072商品类目下的不同商品点击次数
select item_id as 商品ID, count(*) as 点击次数
from userbehaviour
where item_class_id = ‘2355072’ and user_behave = ‘pv’
group by item_id
order by 点击次数 desc

#3607361商品类目下的不同商品点击次数
select item_id as 商品ID, count(*) as 点击次数
from userbehaviour
where item_class_id = ‘3607361’ and user_behave = ‘pv’
group by item_id
order by 点击次数 desc

#982926商品类目下的不同商品点击次数
select item_id as 商品ID, count(*) as 点击次数
from userbehaviour
where item_class_id = ‘982926’ and user_behave = ‘pv’
group by item_id
order by 点击次数 desc

从上一步中我们分析出用户想要寻找什么商品后,接下来需要知道淘宝平台上销售的商品是否满足了用户的需求。

首先从商品数量占比上分析这五类商品是否在淘宝平台上足够多,以供用户选择。
#各类商品的占比
SELECT item_class_id as 商品类目ID, COUNT(DISTINCT item_id) AS 商品数目,
CONCAT(ROUND(100*COUNT(DISTINCT item_id)/
(SELECT COUNT(DISTINCT item_id)
FROM userbehaviour),2),’%’) AS 占比
FROM userbehaviour
WHERE item_class_id =‘4756105’ OR item_class_id =‘3607361’
OR item_class_id =‘4145813’ OR item_class_id =‘2355072’
OR item_class_id =‘982926’
GROUP BY item_class_id
ORDER BY 商品数目 DESC;
在这里插入图片描述
从以上结果可以看出,淘宝平台共有6492种商品,种类繁多,而需求量最多的前五类商品在商品数量上一共占到了11%左右,说明淘宝平台对这五类商品的提供了足够多的选择。

结论:因此,用户流失原因并不是淘宝平台上的产品不能很好的满足用户的需求,假设1不成立。

假设②:对于需求量高的商品推送机制不合理,使得需求量高的商品反而没有得到很好的购买发生,高需求商品的转化率低

收集证据:

TOP10商品分析
select item_id as 商品id,
sum(case when user_behave = ‘pv’ then 1 else 0 end) as 商品点击量,
sum(case when user_behave = ‘buy’ then 1 else 0 end) as 商品购买量,
concat(round(sum(case when user_behave = ‘buy’ then 1 else 0 end)/sum(case when user_behave = ‘pv’ then 1 else 0 end),3)*100,’%’) as 商品点击转化率
from userbehaviour
group by item_id
order by 商品点击量 DESC
–order by 商品购买量 desc
limit 10
在这里插入图片描述
在这里插入图片描述

我们可以发现点击量TOP10商品的点击转化率都没有超过平均值2.2%,高需求的商品转化率都极低,而购买量TOP10商品的转化率整体来说比点击量TOP10商品的要高很多,其中只有一个商品id为3031354的商品同时登上了两个榜单,也说明了商品的点击量(流量)并不是影响用户下单的主要因素。一个商品的点击量(流量)很多,说明商品的曝光度很大,但是商品的成交还是由其他很多因素影响的。同时,充分说明了淘宝的推送机制不合理,推荐算法所推送的商品给其带来了曝光度,但最终不是用户喜欢的,并不能带来好的转化率。因此,建议优化商品推荐系统,优化用户搜索商品的推荐算法,提升点击转化率。

对于商品类目来说,高点击量商品类目的转化率和高购买量商品类目的转化率又是怎么样的呢?

TOP10商品类目分析
select item_class_id as 商品类目id,
sum(case when user_behave = ‘pv’ then 1 else 0 end) as 商品类目点击量,
sum(case when user_behave = ‘buy’ then 1 else 0 end) as 商品类目购买量,
concat(round(sum(case when user_behave = ‘buy’ then 1 else 0 end)/sum(case when user_behave = ‘pv’ then 1 else 0 end),3)*100,’%’) as 商品类目点击转化率
from userbehaviour
group by item_class_id
order by 商品类目点击量 desc
–order by 商品类目购买量 desc
limit 10
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以发现从商品类目角度来看两个榜单,购买量TOP10的商品类目转化率整体比点击量TOP 10的商品类目转化要高,其中有5个商品类目同时登上了两个榜单。说明了从整体商品类目来看推荐算法的推荐效果要比单个商品的推荐效果好。因此,建议推荐商品系统的算法优化可以从改善单商品的推荐效果角度去实现,将单个商品的推荐效果(即商品的点击转化率,而非商品类目的点击转化率)作为KPI去完成优化目标。

总之,可以说明淘宝对需求高的商品的推送机制并不合理。所以,假设②成立,对于需求量高的商品推送机制不合理,使得需求量高的商品反而没有得到很好的购买发生,高需求商品的转化率低。

2.3用户的复购情况

复购率指产生两次或两次以上购买的用户占所有购买用户的比例,具体SQL如下:
#创建一个视图,计算每个用户的复购次数
create view fugou as
select user_id,count()as 购买次数
from userbehaviour
where user_behave =‘buy’
group by user_id
having count(
)>=2

#计算总体用户的复购率
SELECT CONCAT(ROUND((select count(1) from fugou )/ (select count(distinct user_id)
from userbehaviour where user_behave=‘buy’)100,2),’%’) as 复购率;
在这里插入图片描述
复购用户的复购次数分布:
select 购买次数,count(
) as 人数
from fugou
group by 购买次数
order by 人数
在这里插入图片描述

3.用户价值分析——RFM模型

针对有购买行为的用户进行分类价值模型的建立:由于没有金额的字段,只对R、F两个维度进行分析。

R(Recency):根据用户最近一次购买的时间到2017年12月3日的日期差来模拟用户最近一次消费时间间隔;

F(Frequency):用户从2017年11月25日到12月3日之间的消费次数来模拟为频率;

建立用户价值体系:
在这里插入图片描述
创建用户RF数值表:
create table RF_score as
select user_id,
datediff(‘2017-12-03’,max(date)) as 间隔天数,
count() as 购买频率
from userbehaviour
where user_behave = ‘buy’
group by user_id
在这里插入图片描述
1)R值计算:
#R值分布计算
select 间隔天数,count(
) as 人数,
concat(round(count(*)100/ (select count() from rf_score),2),’%’) as 人数比例
from rf_score
group by 间隔天数
order by 人数

间隔天书R的频数分布图:
在这里插入图片描述
从上图中可以看出复购间隔天数在0-1天之间的用户占比在45%左右,23%的复购用户的复购间隔天数在2-3天之间,这两部分的用户占了总体的60%多。我们将由此(间隔天数的频数分布图)制定R值的打分标准
在这里插入图片描述
2)F值计算:
#F值分布计算
select 购买频率,count() as 人数,
concat(round(count(
)100/ (select count() from rf_score),2),’%’) as 人数比例
from rf_score
group by 购买频率
order by 人数 desc
购买频率F的人数分布图:
在这里插入图片描述
大部分用户的购买频率在1-4之间,因此我们制定F值的打分标准:
在这里插入图片描述
3)计算所有用户的R分数、F分数
#增加两个字段表示R分数和F分数
alter table rf_score add R_score int;
alter table rf_score add F_score int;

#更新这两个字段
update rf_score set R_score =
(
case when 间隔天数<=1 then 5
when 间隔天数 between 2 and 3 then 4
when 间隔天数 between 4 and 5 then 3
when 间隔天数 between 6 and 7 then 2
when 间隔天数 >7 then 1
else null end
),
F_score = (
case when 购买频率 BETWEEN 1 and 4 then 1
when 购买频率 BETWEEN 5 and 8 then 2
when 购买频率 BETWEEN 9 and 12 then 3
when 购买频率 BETWEEN 13 and 16 then 4
when 购买频率 >=17 then 5
else null end
);
在这里插入图片描述
4)建立RFM模型

#计算用户RF的平均值
select avg(r_score),avg(f_score)
from rf_score

求出:avg(r_socer) = 3.9418
avg(f_score) = 1.2423

#对用户进行价值分类
增加两列:对于分数大于平均值给予“高”分类,否则分在“低”中
alter table rf_score add COLUMN(r_value varchar(255), f_value varchar(255));
update rf_score set r_value =
(
case when r_score>=3.9418 then ‘高’ else ‘低’ end
),
f_value = (
case when f_score>=1.2423 then ‘高’ else ‘低’ end
);

#再增加一类用户类型,更新值
alter table rf_score add user_type varchar(255);
update rf_score set user_type =
(
case when r_value = ‘高’ and f_value = ‘高’ then ‘重要高价值用户’
when r_value = ‘高’ and f_value = ‘低’ then ‘重要挽留用户’
when r_value = ‘低’ and f_value = ‘高’ then ‘重要深耕用户’
when r_value = ‘低’ and f_value = ‘低’ then ‘一般挽留用户’
else null end
);
在这里插入图片描述
5)汇总不同类型用户,了解其占比情况,提出运营意见
#汇总不同类型用户
select user_type as 用户类型,count(*) as 人数
from rf_score
group by user_type
order by 人数 desc
在这里插入图片描述
在这里插入图片描述
从图中可以看到重要挽留用户占比超过一半,是主要的用户类型,其次是一般挽留用户,高价值的用户虽然不对,但也不是非常之少,对此有如下建议:
在这里插入图片描述
4.商品分析

4.1商品点击量与购买量的关系
select item_id as 商品id,
sum(case when user_behave = ‘pv’ then 1 else 0 end) as 商品点击量,
sum(case when user_behave = ‘buy’ then 1 else 0 end) as 商品购买量,
concat(round(sum(case when user_behave = ‘buy’ then 1 else 0 end)/sum(case when user_behave = ‘pv’ then 1 else 0 end),3)*100,’%’) as 商品点击转化率
from userbehaviour
group by item_id
order by item_id
在这里插入图片描述
可以看出有不少商品被点击了很多次但是购买量为0,也有很少一部分商品点击了很少次数,但被购买了很多次,大部分商品点击量在200以下,购买量在6以下。并且商品的购买量和点击量并不是呈正比关系,点击的越多的商品,购买量不一定越多。说明消费者在找到自己满意的产品还是需要花费一定的时间和精力里的,也表明有些消费者购买目标不一定很明确,可以根据用户偏好做精准推荐,提升点击转化率。

4.2商品类目点击量与购买量的关系
select item_class_id as 商品类目id,
sum(case when user_behave = ‘pv’ then 1 else 0 end) as 商品类目点击量,
sum(case when user_behave = ‘buy’ then 1 else 0 end) as 商品类目购买量,
concat(round(sum(case when user_behave = ‘buy’ then 1 else 0 end)/sum(case when user_behave = ‘pv’ then 1 else 0 end),3)*100,’%’) as 商品类目点击转化率
from userbehaviour
group by item_class_id
order by item_class_id
在这里插入图片描述
从上图散点图可以看出商品类目的点击量和购买次数整体呈正相关关系,大部分商品类目的购买次数和点击量都比较低,都集中在10000左右点击量,200购买量以内。

4.3整体商品的购买情况分布
select 商品购买量,
count(*) as 商品数目
from(
select item_id as 商品id,
sum(case when user_behave = ‘buy’ then 1 else 0 end) as 商品购买量
from userbehaviour
group by item_id) aa
group by aa.商品购买量
order by aa.商品购买量
在这里插入图片描述
数据集中共有62,8886个商品,其中3,2485个产生了购买行为。其中27611个的商品只被购买了一次,占比85%,被购买两次的商品有3418种,占比10%,没有销售很集中的商品,说明淘宝电商平台的主要销售商品还在于长尾商品。(长尾产品是需求不旺的商品品)

4.4top10商品、商品类目分析

在用户消费行为转化率低的归因分析里进行了说明。

七、结论与建议
用户生命周期结论与建议
1)用户活跃期规律来看,平台营销活动预热期间以及每天的晚上8点到10点是淘宝用户活跃的高峰期,而每天的早上7点到10点是一个快速增长期。因此,商家可以将引流与营销活动其中放在这几个活跃阶段,资源集中,最大化利用,比如在用户活跃时间段内根据个性化推荐算法,向用户推送他们喜欢的商品信息,包括新品推出及畅销商品促销等,同时也可以推送商家折扣优惠券、红包叠加等。

2)用户留存规律来看,留存率不太乐观,如何进一步提升留存率可以根据其他的数据集做深入探究,比如根据RFM用户价值分类结果对用户做精细化运营。

用户消费行为分析结论与建议
1)从用户的整体行为转化漏斗我们发现从点击到购买的转化率仅为2.25%,而不同的购买途径存在不同的转化率,我们基本归类为4条购买途径①点击-购买(1.32%);②点击-收藏-购买(8%);③点击-加购物车-购买(10%);④点击-收藏&加购物车-购买(14%),如果一个商品既收藏又加购物车,转化率是高于其他路径的,且加入购物车的转化率高于被收藏的转化率。

因此,所以淘宝商家或者平台可以通过适当的营销方式引导用户进行收藏与加购物车的行为,如提前收藏或加购物车有专享价有礼品送,提前发货,送运险费等等福利;购物车营销,对加购但未产生购买行为的商品发放优惠券,引导消费。同时,淘宝平台可以优化搜索匹配度与推荐机制,根据用户的消费偏好或与用户有相同购买属性的用户会购买的商品为用户推荐商品,增加从点击到最终购买的转化率。

2)从总体复购率为65.98%来看,其中81.98%的用户复购次数在2-5次之间,也有30次以上的也有20位左右,说明淘宝用户的复购率还是很高的,用户忠实度较好,可以针对有复购或购买行为的用户再进行用户价值分类,实现精细化运营、管理。

用户价值分析结论与建议
重要高价值客户占比16%,特征为购买间隔短频率高,对这类用户重点维护提供VIP服务机制,增加用户消费体验;

重要挽留用户占比超过一半,高达53%,特征为购买间隔短但频率低,优化搜索匹配度与推荐机制,根据用户的消费偏好或与用户有相同购买属性的用户会购买的商品为其推荐商品,增加用户对淘宝平台的粘性,提高购买次数。

重要发展(深耕)用户最少,仅仅占2%,他们购买间隔长,但购买频繁,他们是有段时间没有来的忠实客户,可以用提供优惠券、红包等方式提高他们的复购率。

一般挽留用户也较多,占比30%左右,他们购买间隔和频谱分值都很低,已经处于流失风险中,我们与其取得联系,查明他们流失原因或了解用户需求,想办法挽回并再次激活他们。

商品分析结论与建议
从整体商品的购买情况来看,85%的商品只被购买率一次,说明淘宝电商平台的销售主要依靠长尾商品;从商品、商品类目的点击量与购买量的关系来看,对于单个商品来说,并不是点击量越多,该商品被购买的次数就越多,存在不少点击量很多,但购买次数为0的商品,大部分商品被点击次数在200左右,购买次数在10以内,说明单个商品的流量或者说曝光度不是影响购买的主要因素,而对于商品类目来说,点击量与购买量基本成正线性相关的关系。由上述对于用户消费行为转化率低的归因分析,也说明现在的商品推荐系统对于商品类目的推荐是比较合适的,但是对于单个商品的推荐效果很差。总之,对于需求量高的商品推送机制不合理,使得需求量高的商品反而没有得到很好的购买发生,高需求商品的转化率低。

因此,建议根据消费者偏好做精准展推荐,优化推荐商品系统的算法,可以从改善单商品的推荐效果角度去实现,将单个商品的推荐效果(即商品的点击转化率,而非商品类目的点击转化率)作为KPI去完成优化目标。

最后

以上就是爱撒娇万宝路为你收集整理的1的全部内容,希望文章能够帮你解决1所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(34)

评论列表共有 0 条评论

立即
投稿
返回
顶部