书籍详情
Python数据分析:从获取到可视化
作者:肖睿,马经权,周华乐,王海军 著
出版社:人民邮电出版社
出版时间:2022-01-01
ISBN:9787115563651
定价:¥59.80
购买这本书可以去
内容简介
随着互联网的蓬勃发展,从浩瀚的网络世界中获取数据并加以处理,从中提取有用的信息越发重要,本书就带领读者学习如何获取数据并以合适的方式呈现数据。全书分为4个部分。第1部分,即第1~第5章,主要介绍数据的采集,从数据采集的意义和基本概念开始,介绍依次介绍Python工具库、Scrapy第三方框架、如何采集数据,以及如何通过Selenium采集动态页面和手机APP数据采集;第2部分即第6章,主要介绍4种常用的数据分析方法;第3部分,即第7~第9章,主要通过3种可视化工具介绍数据可视化;第4部分即第10章,介绍一个完整的实战训练项目,帮助读者系统地梳理数据采集、分析、可视化的整体过程,巩固理论知识,增加实战经验。本书的读者应具备使用Python语言编程地基本能力。本书可以作为各大院校人工智能、大数据相关专业地教材,也可以作为培训机构地教材,并适合数据处理、数据分析、数据可视化相关从业者自学参考。
作者简介
肖睿,课工场创始人,北京大学教育学博士,北京大学软件学院特约讲师,北京大学学习科学实验室特约顾问。作为北大青鸟 Aptech 的联合创始人,历任学术总监、研究院院长、公司副总裁等核心岗位,拥有20多年的IT职业教育产品管理和企业管理经验。于2015年创办课工场,兼任总经理,旨在为大学生提供更可靠的 IT 就业教育及服务。
目录
第 1章 互联网信息采集. 1
任务1.1 了解数据采集基础知识2
1.1.1 数据采集的目的和分类 2
1.1.2 数据采集需要注意的问题 3
1.1.3 数据采集要点3
1.1.4 企业进行数据采集的原因3
任务1.2 理解数据采集基本术语的概念 4
1.2.1 网络爬取 4
1.2.2 HTTP的概念 4
1.2.3 HTTPS的概念 10
1.2.4 URL的概念 11
1.2.5 HTML的概念 12
1.2.6 JSON的概念 13
任务1.3 使用Python工具库实现数据采集 14
1.3.1 urllib3 14
1.3.2 Requests 18
1.3.3 Python工具库数据采集实训 21
本章小结 22
本章习题 22
第 2章 Scrapy采集框架 23
任务2.1 掌握Scrapy技术架构 24
2.1.1 什么是Scrapy . 24
2.1.2 为什么选用Scrapy 24
2.1.3 Scrapy整体架构 25
2.1.4 Scrapy的安装方式 26
任务2.2 采集图书明细数据 26
2.2.1 Scrapy常用命令 27
前言
Python 数据分析——从获取到可视化
2
2.2.2 创建并启动爬虫项目. 27
2.2.3 实训案例:使用Scrapy实现图书信息采集 31
任务2.3 使用Scrapy Shell解析博客网页 36
2.3.1 使用Scrapy Shell 36
2.3.2 实训案例:解析某博客文章网页的内容 36
本章小结 38
本章习题 39
第3章 Scrapy采集框架进阶 41
任务3.1 采集前程无忧网站招聘职位信息 42
3.1.1 Scrapy中的Response对象 42
3.1.2 Scrapy中的Request对象 44
3.1.3 XPath选择器 45
3.1.4 网页翻页爬取. 47
3.1.5 不同页面数据采集 49
3.1.6 Item封装数据 50
3.1.7 Request与Response之间传递参数的方法 51
3.1.8 Item Pipeline 53
3.1.9 实训案例:采集前程无忧网站招聘职位信息 55
任务3.2 采集中国人民大学出版社图书列表 62
3.2.1 JSON结构 62
3.2.2 实训案例:采集中国人民大学出版社图书列表 63
本章小结 66
本章习题 66
第4章 使用“Selenium+Chrome Driver”采集动态页面. 69
任务4.1 使用“Selenium+ChromeDriver”采集我爱我家网房源信息. 70
4.1.1 动态页面工作流程以及常用动态页面采集方式 70
4.1.2 Selenium工具及其安装 71
4.1.3 安装ChromeDriver . 72
4.1.4 Selenium WebDriver概念及其工作流程 73
4.1.5 Selenium WebDriver常用操作 74
4.1.6 Selenium WebDriver常用定位元素的方法 74
4.1.7 Selenium WebDriver鼠标事件 76
4.1.8 Chrome无界面模式 77
4.1.9 Selenium延时等待的方式 77
4.1.10 实训案例:采集我爱我家网“房山”的房源信息. 78
任务4.2 使用“Scrapy+Selenium+ChromeDriver”采集链家网房源信息 81
4.2.1 Scrapy框架与Selenium工具结合使用采集动态页面的过程. 82
4.2.2 实训案例:采集链家网房源信息 82
本章小结 87
本章习题 87
第5章 App数据采集. 89
任务5.1 用Scrapy框架采集柠檬兼职App首页热门推荐兼职信息 . 90
5.1.1 App数据爬取 . 90
5.1.2 用Charles工具监听网络请求. 92
5.1.3 用Charles工具监听App 95
5.1.4 用Scrapy框架采集App数据. 97
5.1.5 实训案例:采集柠檬兼职App首页热门推荐兼职信息 . 98
任务5.2 用Scrapy框架采集中华英才网App的企业库信息. 100
5.2.1 HTTPS简介 101
5.2.2 用Charles工具监听HTTPS网络请求. 101
5.2.3 客户端、Charles、服务器之间的HTTPS请求流程 104
5.2.4 用Scrapy框架爬取使用HTTPS通信协议的App数据 105
5.2.5 实训案例:采集中华英才网App的企业库信息. 106
本章小结 108
本章习题 108
第6章 使用Python进行数据分析 .109
任务6.1 了解数据分析的目的.110
6.1.1 数据分析概述110
6.1.2 数据分析的目的110
任务6.2 使用方差分析方法分析不同药物对某病毒是否有影响 111
6.2.1 方差分析方法基本概念、术语、假定.111
6.2.2 单因素方差分析112
6.2.3 多因素方差分析115
任务6.3 使用回归分析方法分析某病毒是否与温度、湿度呈线性关系.117
6.3.1 回归分析方法基本概念、作用 117
6.3.2 线性回归分析118
6.3.3 逻辑回归分析 120
任务6.4 使用判别分析方法预测某病毒在一定的温度、湿度下是否可以存活 122
6.4.1 判别分析方法基本概念. 122
6.4.2 Fisher判别法 123
6.4.3 贝叶斯判别法. 124
任务6.5:使用聚类分析方法分析某病毒与温度、湿度的关系 . 125
6.5.1 聚类分析方法基本概念. 125
6.5.2 k均值聚类算法. 126
6.5.3 层次聚类算法. 127
本章小结 129
本章习题 129
第7章 Matplotlib数据可视化131
任务7.1 使用Matplotlib绘制招聘职位数量关系的线图与散点图 132
7.1.1 进行可视化的原因 132
7.1.2 Matplotlib的安装方式 133
7.1.3 Matplotlib的核心原理 134
7.1.4 使用Matplotlib绘制招聘职位数量关系的线图 . 135
7.1.5 使用Matplotlib绘制房价与房屋面积关系的散点图 140
任务7.2 使用Matplotlib绘制不同季度不同产品销售额关系的柱状图与饼状图. 144
7.2.1 使用Matplotlib绘制不同季度不同产品销售额关系的柱状图 144
7.2.2 使用Matplotlib绘制不同季度单个产品销售额关系的饼状图 149
本章小结 150
本章习题 150
第8章 PyEcharts数据可视化.151
任务8.1 使用PyEcharts绘制人数分布图 152
8.1.1 PyEcharts可视化工具及其安装方式 . 152
8.1.2 PyEcharts可视化工具常用基础知识 . 153
8.1.3 使用PyEcharts绘制某疾病确诊人数分布柱状图 154
8.1.4 使用PyEcharts绘制某疾病确诊人数比例饼状图 157
8.1.5 使用PyEcharts绘制某疾病确诊人数所占比例关系柱状图和线图. 159
8.1.6 使用PyEcharts绘制某疾病确诊人数分布地图 162
任务8.2 使用PyEcharts绘制需求关系图 163
8.2.1 使用PyEcharts中的词云表示招聘网站中招聘方对岗位需求的关注点. 163
8.2.2 使用PyEcharts绘制对求职者不同能力需求程度的雷达图. 167
本章小结 169
本章习题 169
第9章 Bokeh数据可视化.171
任务9.1 使用Bokeh可视化工具以折线图的方式展示信息. 172
9.1.1 Bokeh可视化工具及其安装方式. 172
9.1.2 使用Bokeh可视化工具绘图的步骤 . 173
9.1.3 Bokeh可视化工具的常用基础知识 . 174
9.1.4 实训案例:绘制2013年~2020年全国司法案件数量变化折线图 . 181
任务9.2 使用Bokeh可视化工具以分组柱状图的方式展示信息 184
9.2.1 Bokeh可视化工具数据交互的方式 . 184
9.2.2 Bokeh可视化工具中的基础柱状图 . 187
9.2.3 实训案例:绘制2017年~2020年全国司法案件数量分布的柱状图 . 188
任务9.3 使用Bokeh可视化工具以饼状图的方式展示信息. 191
9.3.1 使用Bokeh可视化工具中面板及选项卡工具进行数据交互的方法. 191
9.3.2 实训案例:绘制2019年及2020年全国各类司法案件分布饼状图 . 192
本章小结 194
本章习题 195
第 10章 项目实战——房多多网站数据获取与可视化 197
任务10.1 采集房多多网站信息 198
任务10.2 通过数据分析方法分析网站源数据 209
10.2.1 通过方差分析方法分析朝向、区域是否对上海房价有显著影响 . 209
10.2.2 通过回归分析方法分析上海房价与房屋面积的关系. 210
任务10.3 使用Bokeh工具进行网站源数据可视化 212
10.3.1 绘制2020年上海市二手房每日房源新增数量变的折线图. 213
10.3.2 绘制2020年上海市房源发布数量大于100的地区分布柱状图. 216
10.3.3 使用Bokeh工具绘制2020年、2019年上海市各地区二手房房源发布
数据分布情况的饼状图 217
任务1.1 了解数据采集基础知识2
1.1.1 数据采集的目的和分类 2
1.1.2 数据采集需要注意的问题 3
1.1.3 数据采集要点3
1.1.4 企业进行数据采集的原因3
任务1.2 理解数据采集基本术语的概念 4
1.2.1 网络爬取 4
1.2.2 HTTP的概念 4
1.2.3 HTTPS的概念 10
1.2.4 URL的概念 11
1.2.5 HTML的概念 12
1.2.6 JSON的概念 13
任务1.3 使用Python工具库实现数据采集 14
1.3.1 urllib3 14
1.3.2 Requests 18
1.3.3 Python工具库数据采集实训 21
本章小结 22
本章习题 22
第 2章 Scrapy采集框架 23
任务2.1 掌握Scrapy技术架构 24
2.1.1 什么是Scrapy . 24
2.1.2 为什么选用Scrapy 24
2.1.3 Scrapy整体架构 25
2.1.4 Scrapy的安装方式 26
任务2.2 采集图书明细数据 26
2.2.1 Scrapy常用命令 27
前言
Python 数据分析——从获取到可视化
2
2.2.2 创建并启动爬虫项目. 27
2.2.3 实训案例:使用Scrapy实现图书信息采集 31
任务2.3 使用Scrapy Shell解析博客网页 36
2.3.1 使用Scrapy Shell 36
2.3.2 实训案例:解析某博客文章网页的内容 36
本章小结 38
本章习题 39
第3章 Scrapy采集框架进阶 41
任务3.1 采集前程无忧网站招聘职位信息 42
3.1.1 Scrapy中的Response对象 42
3.1.2 Scrapy中的Request对象 44
3.1.3 XPath选择器 45
3.1.4 网页翻页爬取. 47
3.1.5 不同页面数据采集 49
3.1.6 Item封装数据 50
3.1.7 Request与Response之间传递参数的方法 51
3.1.8 Item Pipeline 53
3.1.9 实训案例:采集前程无忧网站招聘职位信息 55
任务3.2 采集中国人民大学出版社图书列表 62
3.2.1 JSON结构 62
3.2.2 实训案例:采集中国人民大学出版社图书列表 63
本章小结 66
本章习题 66
第4章 使用“Selenium+Chrome Driver”采集动态页面. 69
任务4.1 使用“Selenium+ChromeDriver”采集我爱我家网房源信息. 70
4.1.1 动态页面工作流程以及常用动态页面采集方式 70
4.1.2 Selenium工具及其安装 71
4.1.3 安装ChromeDriver . 72
4.1.4 Selenium WebDriver概念及其工作流程 73
4.1.5 Selenium WebDriver常用操作 74
4.1.6 Selenium WebDriver常用定位元素的方法 74
4.1.7 Selenium WebDriver鼠标事件 76
4.1.8 Chrome无界面模式 77
4.1.9 Selenium延时等待的方式 77
4.1.10 实训案例:采集我爱我家网“房山”的房源信息. 78
任务4.2 使用“Scrapy+Selenium+ChromeDriver”采集链家网房源信息 81
4.2.1 Scrapy框架与Selenium工具结合使用采集动态页面的过程. 82
4.2.2 实训案例:采集链家网房源信息 82
本章小结 87
本章习题 87
第5章 App数据采集. 89
任务5.1 用Scrapy框架采集柠檬兼职App首页热门推荐兼职信息 . 90
5.1.1 App数据爬取 . 90
5.1.2 用Charles工具监听网络请求. 92
5.1.3 用Charles工具监听App 95
5.1.4 用Scrapy框架采集App数据. 97
5.1.5 实训案例:采集柠檬兼职App首页热门推荐兼职信息 . 98
任务5.2 用Scrapy框架采集中华英才网App的企业库信息. 100
5.2.1 HTTPS简介 101
5.2.2 用Charles工具监听HTTPS网络请求. 101
5.2.3 客户端、Charles、服务器之间的HTTPS请求流程 104
5.2.4 用Scrapy框架爬取使用HTTPS通信协议的App数据 105
5.2.5 实训案例:采集中华英才网App的企业库信息. 106
本章小结 108
本章习题 108
第6章 使用Python进行数据分析 .109
任务6.1 了解数据分析的目的.110
6.1.1 数据分析概述110
6.1.2 数据分析的目的110
任务6.2 使用方差分析方法分析不同药物对某病毒是否有影响 111
6.2.1 方差分析方法基本概念、术语、假定.111
6.2.2 单因素方差分析112
6.2.3 多因素方差分析115
任务6.3 使用回归分析方法分析某病毒是否与温度、湿度呈线性关系.117
6.3.1 回归分析方法基本概念、作用 117
6.3.2 线性回归分析118
6.3.3 逻辑回归分析 120
任务6.4 使用判别分析方法预测某病毒在一定的温度、湿度下是否可以存活 122
6.4.1 判别分析方法基本概念. 122
6.4.2 Fisher判别法 123
6.4.3 贝叶斯判别法. 124
任务6.5:使用聚类分析方法分析某病毒与温度、湿度的关系 . 125
6.5.1 聚类分析方法基本概念. 125
6.5.2 k均值聚类算法. 126
6.5.3 层次聚类算法. 127
本章小结 129
本章习题 129
第7章 Matplotlib数据可视化131
任务7.1 使用Matplotlib绘制招聘职位数量关系的线图与散点图 132
7.1.1 进行可视化的原因 132
7.1.2 Matplotlib的安装方式 133
7.1.3 Matplotlib的核心原理 134
7.1.4 使用Matplotlib绘制招聘职位数量关系的线图 . 135
7.1.5 使用Matplotlib绘制房价与房屋面积关系的散点图 140
任务7.2 使用Matplotlib绘制不同季度不同产品销售额关系的柱状图与饼状图. 144
7.2.1 使用Matplotlib绘制不同季度不同产品销售额关系的柱状图 144
7.2.2 使用Matplotlib绘制不同季度单个产品销售额关系的饼状图 149
本章小结 150
本章习题 150
第8章 PyEcharts数据可视化.151
任务8.1 使用PyEcharts绘制人数分布图 152
8.1.1 PyEcharts可视化工具及其安装方式 . 152
8.1.2 PyEcharts可视化工具常用基础知识 . 153
8.1.3 使用PyEcharts绘制某疾病确诊人数分布柱状图 154
8.1.4 使用PyEcharts绘制某疾病确诊人数比例饼状图 157
8.1.5 使用PyEcharts绘制某疾病确诊人数所占比例关系柱状图和线图. 159
8.1.6 使用PyEcharts绘制某疾病确诊人数分布地图 162
任务8.2 使用PyEcharts绘制需求关系图 163
8.2.1 使用PyEcharts中的词云表示招聘网站中招聘方对岗位需求的关注点. 163
8.2.2 使用PyEcharts绘制对求职者不同能力需求程度的雷达图. 167
本章小结 169
本章习题 169
第9章 Bokeh数据可视化.171
任务9.1 使用Bokeh可视化工具以折线图的方式展示信息. 172
9.1.1 Bokeh可视化工具及其安装方式. 172
9.1.2 使用Bokeh可视化工具绘图的步骤 . 173
9.1.3 Bokeh可视化工具的常用基础知识 . 174
9.1.4 实训案例:绘制2013年~2020年全国司法案件数量变化折线图 . 181
任务9.2 使用Bokeh可视化工具以分组柱状图的方式展示信息 184
9.2.1 Bokeh可视化工具数据交互的方式 . 184
9.2.2 Bokeh可视化工具中的基础柱状图 . 187
9.2.3 实训案例:绘制2017年~2020年全国司法案件数量分布的柱状图 . 188
任务9.3 使用Bokeh可视化工具以饼状图的方式展示信息. 191
9.3.1 使用Bokeh可视化工具中面板及选项卡工具进行数据交互的方法. 191
9.3.2 实训案例:绘制2019年及2020年全国各类司法案件分布饼状图 . 192
本章小结 194
本章习题 195
第 10章 项目实战——房多多网站数据获取与可视化 197
任务10.1 采集房多多网站信息 198
任务10.2 通过数据分析方法分析网站源数据 209
10.2.1 通过方差分析方法分析朝向、区域是否对上海房价有显著影响 . 209
10.2.2 通过回归分析方法分析上海房价与房屋面积的关系. 210
任务10.3 使用Bokeh工具进行网站源数据可视化 212
10.3.1 绘制2020年上海市二手房每日房源新增数量变的折线图. 213
10.3.2 绘制2020年上海市房源发布数量大于100的地区分布柱状图. 216
10.3.3 使用Bokeh工具绘制2020年、2019年上海市各地区二手房房源发布
数据分布情况的饼状图 217
猜您喜欢