黑色星期五是每年十一月的第四个星期五,人们通常由此开始圣诞节大采购,各大商场会推出大量优惠活动,这也是商家在年底进行的最后一次大规模促销。
本次数据分析从销售情况、客户和产品三大维度着手,首先总结本次“黑五”销售情况及各项销售关键指标。其次,分析和研究不同特征群体客户的购买行为,如性别、年龄、职业、婚姻、居住地、居住时长对购买行为的影响。最后,总结最畅销的Top10商品,为商家了解用户购买行为及下一次“黑五”促销提供参考。
数据来源于Kaggle:https://www.kaggle.com/sdolezel/black-friday
SELECT count(*) FROM data.black friday;
SELECT count(distinct User_ID) FROM data.`black friday`;
SELECT count(distinct Product_ID) FROM data.`black friday`;
SELECT count(distinct Age) FROM data.`black friday`;
SELECT distinct Occupation FROM data.`black friday`
order by Occupation;
SELECT distinct(Product_Category_1) FROM data.`black friday`
order by Product_Category_1
本次数据分析使用的数据集记录了零售商店在黑色星期五的交易样本数据,包含555959条数据,5891个不同的user_id,3631个不同的product_id,7个年龄段,21种职业,3个城市,20种商品等,共12个字段,如下图所示:
序号 | 字段名 | 字段描述 | 备注 |
---|---|---|---|
1 | User_ID | 用户ID | - |
2 | Product_ID | 产品ID | - |
3 | Gender | 性别 | F:女性,M:男性 |
4 | Age | 年龄 | 7个年龄段 |
5 | Occupation | 职业 | 21种职业,用0-20表示 |
6 | City_Category | 城市类别 | 3个不同城市,用“A”“B”“C”表示 |
7 | Stay_In_Current_City_Years | 所在城市居住时长 | 0,1, 2, 3, 4+ |
8 | Marital_Status | 婚姻状况 | 0:已婚,1:未婚 |
9 | Product_Category_1 | 产品类别1-服饰 | 20种产品,用1-20表示 |
10 | Product_Category_2 | 产品类别2-电子产品 | - |
11 | Product_Category_3 | 产品类别3-家居用品 | - |
12 | Purchase | 购买金额 | - |
其中,产品类别2缺失数据占比31%,产品类别3缺失数据占比69%,数据量大,不能删除。由于不清楚真实情况,产品类别不便填充,所以对这两个字段不进行处理和分析。
SELECT count(distinct User_id) '客户数量',
sum(Purchase) '销售总额',
sum(Purchase)/count(distinct User_id) '客单价'
FROM data.`black friday
SELECT count(Product_ID) '销售总数',
sum(Purchase) '销售总额',
sum(Purchase) /count(Product_ID) '件单价'
FROM data.`black friday`;
SELECT count(Product_ID) '销售总数',
count(distinct User_ID) '订单总数',
count(Product_ID)/count(distinct User_ID) '购物篮系数'
FROM data.`black friday`;
SELECT Gender '性别',count(distinct User_ID) '人数',
avg(Purchase) '人均消费'
FROM data.`black friday`
group by Gender;
从消费人数和购买力两个维度来看,男性消费者都超过女性消费者。其中,男性消费者人数是女性消费者的2.5倍,且男性人均消费高于女性。这个现象与国内男女性的消费情况存在较大差异,在下一次“黑五”促销活动中,商家可以适当着重关注男性的购买需求。
SELECT Age '年龄',count(distinct User_ID) '消费人数',
avg(Purchase) '人均消费'
FROM data.`black friday`
group by Age;
上图所示,颜色越深表示消费人数越多,面积越大表示购买金额越多。由图可知,主要购买力集中在18-45岁人群,其中,26-45岁消费者的消费金额占比达到60%,可能原因是这部分人群已经工作,且具有稳定的收入来源。
SELECT Occupation '职业',count(distinct User_ID) '消费人数',
sum(Purchase) '消费金额',avg(Purchase) '平均消费金额'
FROM data.`black friday`
group by Occupation
order by sum(Purchase) desc;
消费人数排名前三的职业为4、0、7,人均消费差距不大,购买人数越多,消费总额越高。商家可以针对购买人数较多的职业进行着重推广和宣传。因为无法获取具体职业,所以无从知道更多信息。
SELECT City_Category '城市',count(distinct User_ID) '消费人数',
avg(Purchase)'人均消费'
FROM data.`black friday`
group by City_Category
order by '人均消费' desc;
由上图可知,C城市的人均消费水平高于A城市和B城市,且购买人数最多。商家在维持C城市的客户基础上,可以进一步挖掘和刺激A城市和B城市的潜在用户及购买需求。
SELECT Stay_In_Current_City_Years '居住时长',count(distinct User_ID) '消费人数',
avg(Purchase) '人均消费'
FROM data.`black friday`
group by Stay_In_Current_City_Years
order by count(distinct User_ID) desc;
“0”,“1”,“2”,“3”,“4+”代表在目前城市的居住时间,随着居住时长的增加,消费人数递减,居住时间较长(4+)和较短(0)的消费人数都较少。在ABC三个城市,居住一年的客户数量都是最多的,可能原因是,居住时间不长需要补充购买的用品较多,消费需求大。商家可以更加关注居住时间为一年的消费群体,虽然人均消费差距不大,但消费人数是其他的两倍,能够带来总体消费的增加。
SELECT Marital_Status '婚姻状况',count(distinct User_ID) '消费人数',
avg(Purchase) '人均消费',sum(Purchase) '消费金额'
FROM data.`black friday`
group by Marital_Status
order by count(distinct User_ID) desc;
已婚人士购买力强于未婚人士,可能的原因是,已婚人士在家庭消费方面较多。在进行营销的时候,可以偏向于已婚人群。
SELECT Product_ID '商品名称',count(Product_ID) '数量',
sum(Purchase) '销售金额'
FROM data.`black friday`
group by Product_ID
order by sum(Purchase) desc
limit 10;
SELECT sum(消费金额)/5154671123*100 '占比' from
(SELECT User_ID '客户ID',sum(Purchase) '消费金额'
FROM data.`black friday`
group by User_ID
order by sum(Purchase) desc
limit 1178) a;
20%的主要客户创造了55%的销售收入,商家可以对这部分主要客户进行持续维护和精准营销,以促进销售额地大幅增长。