python数据分析库有哪些餐厅_使用 Python 分析全国所有必胜客餐厅
作者:极客猴
来源:极客猴
题图:by thefolkpr0ject from Instagram
阅读文本大概需要 7 分钟。
在之前的一篇文章中,我讲到如何爬取必胜客官网中全国各大城市餐厅的信息。虽然餐厅数据信息被抓取下来,但是数据一直在硬盘中“躺尸”。不曾记得,自己已经第 n 次这么做了。说到这里,要追溯到自己的大学时光。
自己从大学开始就接触 Python,当时是自己的好奇心很强烈。好奇为什么 Python 不需要浏览器就能抓取网站数据。内心感叹到,这简直是太妙了。自己为了体验这种抓取数据的乐趣,所以写了很多的爬虫程序。
随着自己知识面地拓展,自己了解到数据分析这领域。自己从而才知道爬取到的数据,原来背后还隐藏的一些信息。自己也是在学习这方面的相关知识。这篇文章算是数据分析的处女稿,主要内容是从数据中提取出必胜客餐厅的一些信息。01环境搭建
百度前端技术部开源一个基于 Javascript 的数据可视化图表库。其名字为 ECharts。它算是前端数据可视化的利器,能提供直观,生动,可交互,可个性化定制的数据可视化图表。
国内有个大神突发奇想,这么好用的库如果能和 Python 结合起来就好了。于是乎,pyecharts 库就应运而生。因此,pyecharts 的作用是用于生成 Echarts 图表的类库。本文中的所有图标,自己都是利用 pyecharts 生成的。
安装该库也很简单,使用 pip 方式安装。pip install pyecharts02数据清洗
数据清洗工作是数据分析必不可少的步骤。这一步是为了清洗一些脏数据。因为可能网站本身就有空数据,或者匹配抓取网站信息时,有些混乱的数据。这些都需要清除掉。
我之前是将数据写到一个 json 文件中,我先将数据读取出来。然后把 json 文本数据转化为字典类型。def get_datas():
""" 从文件中获取数据 """
file_name = 'results.json'
with open(file_name, 'r', encoding='UTF-8') as file:
content = file.read()
data = json.loads(content, encoding='UTF-8')
# print(data)
return data
接着对字典进行遍历, 统计每个城市的餐厅总数。def count_restaurants_sum(data):
""" 对字典进行遍历, 统计每个城市的餐厅总数 """
results = {}
for key, value in data.items():
results[key] = len(value)
# print(key, len(value))
return results
再将字典中的每个 key-value 转化为元组,然后根据 value 进行倒序排序。restaurants_sum = sorted(restaurants_sum.items(), key=lambda item: item[1], reverse=True)
最后根据显示结果,手动删除一些脏数据。def clean_datas(data):
"""
清除脏数据。
经过分析发现 ('新区', 189), ('南区', 189), ('朝阳', 56) 是脏数据, 必胜客官网的地区选项中就有这三个名字
[('新区', 189), ('上海市', 189), ('南区', 189), ('北京市', 184), ('深圳', 95),
('广州', 86), ('杭州', 78), ('天津市', 69), ('朝阳', 56), ('苏州', 54)]
"""
data.remove(('新区', 189))
data.remove(('南区', 189))
data.remove(('朝阳', 56))
return data
到此,数据工作已经完成。03数据分析
我们已经拿到了经过清洗的数据,我们简单对数据进行打印,然后绘制直方图。def render_top10():
"""
绘制直方图显示 全国必胜客餐厅总数 Top 10 的城市
根据清洗过后数据的结果, Top 城市如下
('上海市', 189), ('北京市', 184), ('深圳', 95), ('广州', 86), ('杭州', 78),
('天津市', 69), ('苏州', 54), ('西安', 52), ('武汉', 51), ('成都', 48)
"""
attr = ["上海", "北京", "深圳", "广州", "杭州", "天津", "苏州", "西安", "武汉", "成都"]
values = [189, 184, 95, 86, 78, 69, 54, 52, 51, 48]
bar = Bar("全国各大城市必胜客餐厅数量排行榜")
bar.add("总数", attr, values, is_stack=True, is_more_utils=True)
bar.render("render_bar.html")
绘制出来的结果如下:
不难看出,一线城市拥有必胜客的餐厅数比较多,省会城市拥有餐厅数要比非省会城市要多。
我们继续绘制饼状图,看看北上广深的餐厅数在全国的占比。def render_top10_percent():
"""
绘制饼状图 显示北上广深餐厅数在全国中的比例
"""
configure(global_theme='macarons')
attr = ["上海", "北京", "深圳", "广州", "其他城市"]
value = [189, 184, 95, 86, 1893] # 根据 count_other_sum() 计算出来的
pie = Pie("北上广深餐厅数的占比")
pie.add("", attr, value, is_label_show=True, is_more_utils=True)
pie.render("render_pie.html")
绘制出来的结果如下:
从数据上看,北上广深的餐厅数占据全国餐厅数的 22.64%。其他二三线城市共占据 77.36%。说明必胜客餐厅不仅主打大城市路线,还往二三四线城市发展,扩展领域。
python数据分析库有哪些餐厅_使用 Python 分析全国所有必胜客餐厅相关推荐
- python爬取餐饮数据_使用 Python 分析全国所有必胜客餐厅
本文原创发布于微信公众号「极客猴」,欢迎关注第一时间获取更多原创分享 在之前的一篇文章中,我讲到如何爬取必胜客官网中全国各大城市餐厅的信息.虽然餐厅数据信息被抓取下来,但是数据一直在硬盘中" ...
- 100行代码爬取全国所有必胜客餐厅信息
点击上方"极客猴",选择"置顶公众号" 第一时间获取Python技术干货! 题图: by jinovich from Instagram 阅读文本大概需要 10 ...
- 100 行代码爬取全国所有必胜客餐厅信息
阅读文本大概需要 10 分钟. 当我刚接触 Python 时,我已经被 Python 深深所吸引.Python 吸引我的地方不仅仅能用其编写网络爬虫,而且能用于数据分析.我能将大量的数据中以图形化方式 ...
- 爬取全国所有必胜客餐厅信息
本文转载自:http://gkhelp.cn/1206.html 当我刚接触 Python 时,我已经被 Python 深深所吸引.Python 吸引我的地方不仅仅能用其编写网络爬虫,而且能用于数据分 ...
- python三方库打包项目中_将Python库打包到项目中
如果你有一个Python项目需要分发出去,但这个项目用了一些第三方库,而你又不想使用你这个项目的用户自行去安装这些库,这时候就很有必要将这些Python库打包到你的项目中了. 下面以Faker这个库举 ...
- Python爬虫之编辑cookie实例:必胜客餐厅
转载自公众号:python_shequ 今天,我就爬取全国各地所有的必胜客餐厅信息,以便后续做数据分析. 01抓取目标 我们要爬取的目标是必胜客中国.打开必胜客中国首页,进入"餐厅查询&qu ...
- python爬虫餐饮行业数据分析统计服_用Python分析统计必胜客餐厅
在之前的 一篇文章100行代码爬取全国所有必胜客餐厅 信息,我讲到如何爬取必胜客官网中全国各大城市餐厅的信息.虽然餐厅数据信息被抓取下来,但是数据一直在硬盘中"躺尸".不曾记得,自 ...
- python与金融数据分析统计服_作为一名量化金融分析师,你知道在量化金融中有多少个Python数据分析库嘛?...
作为一名量化金融分析师,好用的工具非Python莫属了.为什么呢?Python也算得上是比较常用的编程语言,其效率和代码可读性是不容小觑的.作为一个科学数据的编程语言,Python介于R和java之间 ...
- 自制 python 数据分析库
https://github.com/zhuyi10/statistics 自己写了一个python 数据分析库,主要实现了一些基本统计方法,希望大家交流指正 转载于:https://www.cnbl ...
最新文章
- 多线程编程之线程绑定处理器核
- 订单库存是否与库存地有关
- CaffeMFC:caffe.pb.h(2525): error C2059: syntax error : 'constant'
- 启动之后自己关闭_电脑一开都是广告,请问怎么永久关闭?
- Yii 2.0 GII 访问404错误
- 6-1 稀疏矩阵求和 (70 分)
- java对象布局查看工具_Java 查看对象布局工具 - Java Object Layout
- 以太坊2.0合约质押新增1.81万ETH
- 《设计模式详解》结构型模式 - 外观模式
- Mysql--Auto_increment详解
- (转)如何用PHP/MySQL为 iOS App 写一个简单的web服务器(译) PART1
- 微软ODBC服务器驱动,Microsoft ODBC 桌面数据库驱动程序
- vscode-扩展插件
- silvaco用户手册学习1——Getting Started with Atlas
- html div调用js,在div中调用javascript函数
- Scanner类、Random类、ArrayList 类
- 戴尔7060安装win10系统教程
- 《数据结构与算法分析》回溯算法之博弈——三连棋(tic tac toe)人机对战AI设计(αβ枝减)
- Java课程实验报告一:初识java
- opencv传统分割算法总结(多边形拟合,水平投影,直线检测)
热门文章
- mysql查询01课程比02课程_小菜菜mysql练习解读分析2——查询存在 01 课程但可能不存在 02 课程的情况(不存在时显示为 null )...
- 阿Q:被恶心的虫子咬了
- 爆米花现象_芯片爆米花现象.ppt
- Win10下loadrunner11破解安装与运行
- linux 中的 chmod 与 chown 命令
- python圆形标志点检测
- Windows XP sp3 系统安装 Windbg 符号文件 Symbols 时微软失去支持的解决方案
- BGD,SGD,MBGD
- SQL中EXISTS的用法以及和IN的区别
- 2010 12 15 可爱的宝宝