本项目源码链接:百度云盘提取码6zdz
数据来源:阿里天池
为减少篇幅,本文将尽量少的配上源码,在文件中已经有详细注释。
本案例结合Python和Tableau,由于数据量及维度较少,所以更多的是使用Tableau进行可视化处理。
根据PEST框架,从四个角度简要分析:
Ali_Mum_Baby是一个包含超过900万儿童信息(生日和性别)的数据集,由消费者提供,他们共享这些信息是为了获得更好的推荐或搜索结果。
本次数据共有两个csv。
婴儿信息表
Column | Description |
---|---|
user_id | user id |
birthday | children’s birthday |
gender | 0-female,1-male,2-unknown |
交易记录表
Column | Description |
---|---|
item_id | item id |
user_id | user id |
cat_id | category id |
cat1 | root category id |
propery | property of the corresponding item |
buy_mount | purchase quantity |
day | timestamp |
baby = pd.read_csv("./sam_tianchi_mum_baby.csv")
trade =pd.read_csv("./sam_tianchi_mum_baby_trade_history.csv")
# 根据info()查看,本数据集无缺失值
# 列重命名
trade.rename({"auction_id":"item_id"},axis=1,inplace=True)
# 先将property暂且取出放在一边,后续再分析
property = trade.property
trade.drop('property',axis=1,inplace=True)
# 日期类型转换
baby['birthday']=pd.to_datetime(baby.birthday.astype('str'))
trade['day'] = pd.to_datetime(trade.day.astype('str'))
经过清洗后的数据保留下29942行。统计时间是2012/7/2-2015/2/5。整个数据集中共6个商品大类,662个商品分类,28394件商品,29915名用户。
这是两年多经过删减的数据,由于缺少部分数据,所以我们只能根据这份数据集进行分析。主要是思路。
2017/7-2015/2期间总销量是49973件,从上图我们可以看出淘宝和天猫平台母婴商品市场销量整体呈现上升趋势,但是波动较大。
2015年春节假期是2015/2/18-2015/2/24,数据集统计时间只到2015/2/5,所以就暂不分析2015年第一季度情况
临近春节可能存在部分企业提早放假,快递停运,销售低谷时段与春节假期基本吻合,假期结束后购买量和用户量上升,所以可以认为第一季度销量下降是由春节假期造成的。
所以可以认为每年第四季度的销量上涨和双十一双十二活动有很大的关系。
各月产品复购率极低。各大类的复购率也极低,均未有超过1%,其中大类38的复购率最高为0.17%。考虑到用户单次购买量大多是一件,且复购率低,说明用户对单一商品的回购欲望极低,商家应该从产品角度进行考虑,例如产品质量及购物体验等。
大类28和50008168销量最佳,大类38虽然销量低、子类数最少但是人均购买量却很高,说明用户在购买38大类下的产品时选择余地较少,但同时用户对此类产品的需求又很旺盛,可以适量的增加大类38下的子类产品,提高销售量。
12265008产品的销量、人均需求量都不高。说明用户对这类产品的需求低,建议减少进货,以免库存积压。
将两张表inner连接后发现存在1984年的婴儿,明显属于异常值,我们要剔除掉。
由于数据统计到2015/2,所以我们假定分析日期为2015/3,购买母婴商品的用户中,婴儿年龄主要集中在0-3岁。
购买母婴产品的用户家庭中有47.1%是男婴,52.9%是女婴。
我们将婴儿年龄进行分组,分别是未出生、婴儿期(0-12个月)、幼儿期(1-3岁)、学龄前期(3-7岁)、学龄期(7+)。
根据上图我们不难看出婴儿各阶段的热销大类:
随着婴儿年龄增长50008168大类的产品需求量逐渐增长而50014815大类的产品需求量逐渐降低。
女婴家庭的商品需求量明显大于男性家庭,我们细分到商品类别看一下。
可以看到大类50014815下的50018831商品的销售记录中有71.05%都是由女婴家庭购买的。在购买记录中不乏某些高销量产品的女婴家庭购买占比为100%的情况。
个人意见,仅供参考