基于MySQL的淘宝用户购物行为的分析

数据来源:https://tianchi.aliyun.com/dataset/dataDetail?dataId=46(阿里云天池)

一、分析目的与主要指标

我们的目的是查看双十一之后1个月的用户购物情况,主要有以下指标

1. 日常访问量

2. 购物点击总体情况:用户总访问量PV、 收藏次数、购物车加入数、购买次数;

3. 购物行为转化率与行为转化漏斗;

4. 用户总数、下单购买人数与用户转化率;

5. 回头客与复购情况;

6. 查看点击与购买次数最多/最少的客户情况

7. 查看用户购物活跃 时间

8. 查看用户对商品的喜好

二、数据解析

表名:tianchi_user, 合计1048675行数据,共有6列/字段:

user_id:用户编码

item_id:商品编码

behavior_type:用户行为分类(1点击,2收藏,3加入购物车,4下单购买四种)

user_geohash:地理位置(无效NULL值过多,无法有效分析,隐藏或删除此列)

item_category:商品的类别代号

time:用户行为发生的日期时间

三、数据整理

去重后,将该CSV文件导入Navicat

1.查看完整性,处理缺失值

除了user_geohash已经被隐藏/删除/或不被导入即可,导入检查其他5列,确认数据完整,无需填补。

2. 分列时间

表中time 字段日期和小时合在一起,不便分析,把该字段拆分为 2 个字段,一个日期+一个小时列。

-- 重命名 time 字段名称为 date

ALTER TABLE  tianchi_user CHANGE time date VARCHAR(255) 

-- 添加 time 列

ALTER TABLE tianchi_user ADD time VARCHAR(20);

-- 复制 date 列到 time 列

UPDATE  tianchi_user SET time=date;

-- 在 date 列截取(年-月-日)信息

UPDATE  tianchi_user  SET date=REPLACE(date,date,SUBSTRING_INDEX(date,' ',1));

-- 在 time 列截取小时信息

UPDATE  tianchi_user  SET time=REPLACE(time,time,SUBSTRING_INDEX(time,' ',-1));


拆分后表格如下:

3.把用户行为behavior_type(1点击,2收藏,3加入购物车,4下单购买四种)改为便于识别的代号

UPDATE tianchi_user

SET behavior_type=REPLACE(behavior_type,1,'PV');

UPDATE tianchi_user

SET behavior_type=REPLACE(behavior_type,2,'Like');

UPDATE tianchi_user

SET behavior_type=REPLACE(behavior_type,3,'Add');

UPDATE tianchi_user

SET behavior_type=REPLACE(behavior_type,4,'Buy');

修改后如下:

四、数据查询分析

1.日常点击量

从图中可以看出,双十一之后那一个月每天的访问量都是比较平稳的,周末没有明显差别。一般维持在25000-30000之间,而双12前一天开始增加,当天则是翻倍的情况

2.总体情况:点击量PV总访问量、 购物车数量、收藏次数、购买次数

初步观察:点击量很大而加入购物的人数却才到点击量的3%,这里有待观察,可以继续看具体的行为转化率。

SELECT behavior_type, COUNT(*)

FROM tianchi_user

GROUP BY behavior_type;

3.用户行为转化率情况:漏斗模型(tableau)

从下图中可以看出,PV占了总行为数的94%,而添加购物车只占3%,而最后实际购买的在1%,所以从点击到添加购物车这一步,转化最低 ,流失很多。

原因猜想:

1)推荐的商品不到位用户没兴趣,推荐算法有待改进,

2)页面不明确,分类不清,用户难以到达自己想要的商品子类别,

3)商品搜索关键字关联度不足,用户难以搜到自己想要的商品。

4.净点击用户量UV,净购买用户数量,客户转化率

由下图,总客户有8500,最后购买的有4300,总体转化率接近51%,没有行业对比,暂时不清楚情况是好是差。

SELECT COUNT(DISTINCT user_id) AS '用户总数' FROM tianchi_user;

#查询下单购买用户量

SELECT COUNT(DISTINCT user_id) AS '下单购买用户量' FROM tianchi_user

WHERE behavior_type = 'Buy';

创建视图

CREATE VIEW behavior_temp AS

SELECT user_id, count(behavior_type) as '行为次数小计',

SUM(CASE WHEN behavior_type='PV' THEN 1 ELSE 0 END) AS '点击次数',

SUM(CASE WHEN behavior_type='Like' THEN 1 ELSE 0 END) AS '收藏次数',

SUM(CASE WHEN behavior_type='Add' THEN 1 ELSE 0 END) AS '购物车数',

SUM(CASE WHEN behavior_type='Buy' THEN 1 ELSE 0 END) AS '购买次数'

FROM tianchi_user

GROUP BY user_id

ORDER BY COUNT(behavior_type) DESC;

-- DROP VIEW behavior_temp

#查看用户购物情况视图

SELECT * FROM behavior_temp

5.查询购买用户数量、重复购买用户数量以及复购率

回头客近50%,也还需要对比,才知道是好是差。

#查询用户复购率

SELECT SUM(CASE WHEN 购买次数>=2 THEN 1 ELSE 0 END) AS '复购用户',

SUM(CASE WHEN 购买次数>0 THEN 1 ELSE 0 END) AS '总购用户',

CONCAT(ROUND(SUM(CASE WHEN 购买次数>=2 THEN 1 ELSE 0 END)/SUM(CASE WHEN 购买次数>0 THEN 1 ELSE 0 END)*100), '%') AS '复购率'

FR OM behavior_temp

6.#查看购买次数多的用户情况,及其购买率

1)点击量不大、购买次数多的用户,购物目的相对比较明确,一般是刚需,这种客户点击次数/收藏次数都较少而购买率自然就上去了,这种大概适合继续维护,不易开发

2)点击量大,购买次数多的用户,一般是理性偏热衷购物的用户,这大概是我们的重点维护,适当开发的对象

SELECT user_id, 点击次数, 收藏次数, 购物车数, 购买次数,

CONCAT(ROUND(购买次数/点击次数*100, 2),'%') AS '购买率'

FROM behavior_temp

GROUP BY user_id

ORDER BY 购买次数 DESC;

3)购买次数少点击少的用户,我们琢磨不透建议继续观察或放弃;

4)购买次数少,点击次数多的用户可能是选择困难症或是十分精明克制的客户,这种是否可以通过优惠活动或精准营销推送吸引其关注,重点开发。

SELECT user_id, 点击次数, 收藏次数, 购物车数, 购买次数,

CONCAT(ROUND(购买次数/点击次数*100, 2),'%') AS '购买率'

FROM behavior_temp

GROUP BY user_id

ORDER BY 购买次数 ASC;

7.#查看每天用户活跃时段

晚上8点到10点是用户购物活跃的高峰,所以在流量容量的分配,以及晚上客服的排班上可以有所扩张。在这个时段有效运用活动推广。

SELECT time, count(behavior_type) as '行为次数小计',

SUM(CASE WHEN behavior_type='PV' THEN 1 ELSE 0 END) AS '点击次数',

SUM(CASE WHEN behavior_type='Like' THEN 1 ELSE 0 END) AS '收藏次数',

SUM(CASE WHEN behavior_type='Add' THEN 1 ELSE 0 END) AS '购物车数',

SUM(CASE WHEN behavior_type='Buy' THEN 1 ELSE 0 END) AS '购买次数'

FROM tianchi_user

GROUP BY time

ORDER BY COUNT(behavior_type) DESC;

7.#查看用户对商品的喜好,以点击量为基准

#查看用户点击最多的商品类别

SELECT item_category, COUNT(item_category) AS '商品类别点击量'

FROM tianchi_user

WHERE behavior_type = 'PV'

GROUP BY item_category

ORDER BY 商品类别点击量 DESC;

点击最多的类别为1863,前6类商品的点击量均已超过2万,后续直线下降。


#查看用户点击最多商品名称

SELECT item_category, item_id, COUNT(item_id) AS '商品点击量'

FROM tianchi_user

WHERE behavior_type = 'PV'

GROUP BY item_id

ORDER BY 商品点击量 DESC;

点击量最多的商品为112921337,可以看到点击量最多的商品并不在点击最多的商品类别里面,这很正常,可以猜测用户在寻找这几个商品时都很明确。

五、总结问题与改善建议

1、整体上用户行为转化率近1%,主要在用户点击后加入购物车或收藏的这一环节转换率过低,可通过精准营销或作活动引流,增强商品关键字搜索关联性等等手段提高用户转化。

2、购买次数多的用户,购买率较高,同时点击量并不高,说明他们购物目标明确,很有可能是刚需,这些用户需要保持就好;购买次数多,点击量也多的用户可能是理性消费用户需要重点维护,适当开发。

购买次数少点击少的用户,我们琢磨不透建议继续观察或放弃;购买次数少,点击次数多的用户可能是选择困难症或是十分精明克制的客户,这种是否可以通过活动或精准营销推送吸引其关注,重点开发。

3、用户日常活跃度通常都比较平稳,维持在25000-30000之间。在一天中,用户在晚上8--11点最为活跃,这个时段网站流量,促销活动,客服支持等等可以向此倾斜。

4、用户点击最多的6类商品均已突破2万,初步预测那六类商品用户需求较大,而点击最多的具体商品112921337,用户点击前4的商品对应的类别不在点击最多的商品类别里面,说明这个类别的商品,用户寻找的目的比较明确。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342

推荐阅读更多精彩内容