到现在为止,我们的淘宝教程已经写到了第四篇,前三篇分别是:
- 第一篇:Python 模拟登录淘宝,详细讲解如何使用 requests 库登录淘宝 pc 端。
- 第二篇:淘宝自动登录 2.0,新增 Cookies 序列化,教大家如何将 cookies 保存起来。
- 第三篇:Python 爬取淘宝商品避孕套,教大家如何爬取淘宝 pc 端商品信息。
今天,我们来看看淘宝系列的第四篇
我们在上一篇的时候已经将淘宝数据爬取下来了,但是并没有做数据分析。所以今天这篇文章就是教大家如何去分析数据,得出一些有用的结论!
Python 语言相比其他语言的优势在哪里?猪哥认为是 数据分析 和人工智能 这两大块,而且这两个方向需求会慢慢增大,所以那些想学习 Python 却不知道要朝着哪个目标学习的同学可以考虑往这两个方向发展!
一、分析目标
数据分析之前我们需要清楚的知道自己想要分析什么东西,也就是先搞清楚我们的目标。在公司可能是公司财报、用户增量变化、产品受欢迎程度、一些报表等等。
那我们今天的目标有哪些呢?我们来看看:
- 分析避孕套标题高频关键字
- 分析避孕套标题高频关键字 与 商品数量关系
- 分析避孕套标题高频关键字 与 平均销量关系
- 分析避孕套标题高频关键字 与 平均售价关系
- 分析避孕套商品价格区间分布关系
- 分析避孕套商品销量区间分布关系
- 分析避孕套商品价格区间 与 平均销量关系
- 分析避孕套商家数量全国分布关系
- 分析避孕套商家全国平均销量关系
注意: 以上数据分析全部基于上次爬取的 2500 款淘宝商品(默认排序),并不代表淘宝所有避孕套商品!
二、分析实现
有了明确的目标之后,我们就要开始技术选型。
首先数据处理的库这个很好确定,基本就是 numpy 和pandas这两个必备的库,所以大家首先确保已经安装了这两个库。
然后数据可视化库呢?这么多可视化库该怎么选?如果你不知道怎么选,那猪哥给你推荐:pyecharts 这个由中国人开发的可视化库,想要什么类型的图在下面文档里面找就行。
中文文档:https://pyecharts.org/#/zh-cn…
源码地址:https://github.com/pyecharts/…
最后技术选型完毕,我们就可以开始正式的敲代码分析了。(分析的标题将和上面的分析目标一一对应)
0. 数据清洗
在我们数据分析之前,我们需要对数据进行清洗。因为从淘宝爬取下来的数据并不是标准的数据,比如:商品销量,爬取下来的数据是:2.5 万 + 人付款,我们需要将它转为:25000(整型),这样才方面后面的处理!
我们先来看看从淘宝爬取的原始数据,看看那些数据需要清洗
根据使用库的经验猪哥认为有两列数据需要清洗:1、销量转成整型 2、地区转成只包含省份,具体如何清洗我们直接看代码吧!
大家可以看到最后猪哥又从新生成了一个 excel 文件,目的就是不去污染原始数据,因为原始数据非常重要,所以我们在以后的数据处理中要尽量保存好原始数据,多备份几个都不多余!
1. 分析避孕套标题高频关键字
数据清洗完毕之后,我们就可以开始分析了。
分析标题高频关键字这都是老生常谈的一个流程,也就是使用 jieba 分词,然后统计词频,最后生成一个词云图,我相信经常看猪哥公众号的同学看都看腻了吧,这种小功能闭着眼睛都会了。
十几行代码就搞定了,我们来看看效果图吧
分析结论:
- 从整体看商家取名偏爱情趣二字
- 从材质看尿酸的最多
- 从功能看颗粒、螺纹的较多
ps:别问猪哥最中意哪个词,问就是 延时。
2. 分析避孕套标题高频关键字 与 商品数量关系
上面我们只看到大概哪些功能受欢迎,如果需要看具体的数据怎么办呢?
我们就来统计一下包含这些高频关键词的商品数据数量吧,代码讲解在图片下方,下同!
我们取最高频的 20 个关键字,然后遍历所有数据的标题中是否包含其中关键字,如果包含则该关键字的 value 就 +1。来看看生成的柱状图效果吧!
分析结论:
- 包含情趣二字的商品有 1150 款,占到总数(2500 款 +)的 46%。
- 前三甲是:情趣、尿酸、颗粒
ps:猪哥有个疑问想请教各位老司机:这个 免洗 是咋玩的?
3. 分析避孕套标题高频关键字 与 平均销量关系
这个分析有意思了,就相当于用户更喜欢哪种功能或者材质的套套。
高频关键字与平均销量分析数据的实现方法是,同样遍历所有数据的标题,如果包含某个关键字,则把该项数据的销量放在关键字的 value 中(一个 list),统计完后再对每个关键字的 value 进行求平均值,最后再根据平均销量排序。来看看效果吧!
分析结论:
- 螺纹功能平均销量最高,大家的最爱
- 功能平均销量前三分别是:螺纹、颗粒、狼牙
- 小号竟然上榜,哈哈
ps:有很多同学问:为什么不是超薄?超薄自己是爽了,可女朋友呢?
4. 分析避孕套标题高频关键字 与 平均售价关系
分析完大家喜欢的功能,再来分析下这些功能的价格如何?哪些功能的避孕套比较贵呢?
高频关键字 与 平均售价关系分析原理与上面是相似的,使用的同一个方法,只不过是将原来的销量换成价格,来看看效果图吧!
分析结果:
- 可以看到前排几个基本都是关于材质的
- 凝胶、透明质、免洗这三项均价最贵,超过 100 大洋
ps:类似凝胶、透明质、免洗的哪位老司机用过,和一般的有啥区别?
5. 分析避孕套商品价格区间分布关系
商品的标题和功能差不多分析完了,我们来分析下价格吧!
猪哥人为的对价格进行了划分,一共分为:’0-20′, ’21-40′, ’41-60′, ’61-80′, ’81-100′, ‘101-120’, ‘121-150’, ‘151-200’, ‘200 以上 ’ 这 9 个区间,然后对数据切割、统计、排序,最后分别生成柱状图和饼图。
分析结论:
- 价格区间在 21-40 的商品最多为 778 款,大约占比 31%。
- 价格在一百以内与超过一百的商品比大概为 7:1
ps:没想到还有这么多超过 100 块的,我想问下 200 块价格的套套是啥感觉?
6. 分析避孕套商品销量区间分布关系
分析完价格当然是分析销量区间了
销量区间分布分析实现原理:认为为销量分区,大概分为:’ 一千以内 ’, ‘ 一千到五千 ’, ‘ 五千到一万 ’, ‘ 一万到五万 ’, ‘ 五万到十万 ’, ‘ 十万以上 ’,这六个区间,然后同上方法进行统计、排序最后可视化。
分析结论:
- 销量在 1000 以内的最多,大概占比 90%
- 销量过万的一共也才 10 款,说明爆款真的很少
- 有一款套套销量竟然超过 10 万
ps:想知道那款超过 10 万销量的避孕套商品信息吗?关注猪哥微信公众号「裸睡的猪」回复:爆款套套,即可查看!
7. 分析避孕套商品价格区间 与 平均销量关系
假如你是一个避孕套卖家,新推出一款避孕套,你想知道价格定为多少销量才会比较高呢?
这时候我们就可以通过分析价格与商品的销量关系,用实际的数据来定价,这也正是数据分析的价值之一。
商品价格区间 与 平均销量关系分析实现原理是:使用 pandas 自动分区将价格划分为 12 个分区,然后对销量数据分组、求平均值,来看看可视化之后的效果。
分析结论:
- 定价在 31.9-39 这个区间平均销量最高,为 893
- 定价在 10 元以内的销量竟然高居第二
ps:谁用过 10 以内一盒的套套,出来走走
8. 分析避孕套商家数量全国分布关系
标题、价格、销量都分析过了,最后我们还分析下商家位置的数据。
分析的目标是统计全国各省避孕套商家数量,然后做成热力图和柱状图。
统计商家数量还是比较简单,因为我们之前在数据清洗的时候已经只保留了省份数据,所以直接 value_counts()就可以的到想要的数据,看看效果如何!
分析结论:
- 避孕套商家前三甲:广东、上海、浙江
ps:贵州四周都有卖套套的,为何就它没有?难道和地理有关?
9. 分析避孕套商家全国平均销量关系
分析完商家数后,我们来看看各省的平均销量吧。
商家全国平均销量关系分析实现原理:我们新创建一个透视表并对销量求平均值,然后再排序,最后生成热力图和柱状图。
分析结论:
- 出乎意料的是山西 39 个商家平均销量竟然是第一为 1535。
ps:为何山西平均销量是第一?原因是啥真想不通
三、总结
通过上面的数据分析,我们得到了一些有趣的结论:
- 用户偏爱螺纹、颗粒、狼牙等功能
- 凝胶、透明质、免洗这三项均价最贵,超过 100 大洋
- 价格区间在 21-40 的商品最多为 778 款,大约占比 31%
- 销量在 1000 以内的最多,大概占比 90%
- 定价在 31.9-39 这个区间平均销量最高,为 893
- 避孕套商家数量前三甲:广东、上海、浙江
- 山西省平均销量最高为山西
通过上述分析结果,如果猪哥作为一个避孕套商家,想要推出一款产品,设置标题带螺纹、颗粒、狼牙,价格设置在 31.9-39 元,这样可能会更畅销一些。
数据分析作为一把利刃,能让你看见别人看不见的事物,如果使用得当完全可以作为你创业的一个重要支点!
最后猪哥再送你一句忠告:想学数据分析,一定要学好 pandas!!!
获取源码:关注微信公众号「裸睡的猪」回复:分析套套 即可获取!