Python數(shù)據(jù)分析——從獲取到可視化
定 價:59.8 元
- 作者:肖睿 馬經(jīng)權 周華樂 王海軍
- 出版時間:2022/1/1
- ISBN:9787115563651
- 出 版 社:人民郵電出版社
- 中圖法分類:TP311.56
- 頁碼:218
- 紙張:
- 版次:01
- 開本:16開
隨著互聯(lián)網(wǎng)的蓬勃發(fā)展,從浩瀚的網(wǎng)絡世界中獲取數(shù)據(jù)并加以處理,從中提取有用的信息越發(fā)重要,本書就帶領讀者學習如何獲取數(shù)據(jù)并以合適的方式呈現(xiàn)數(shù)據(jù)。全書分為4個部分。
第1部分,即第1~第5章,主要介紹數(shù)據(jù)的采集,從數(shù)據(jù)采集的意義和基本概念開始,介紹依次介紹Python工具庫、Scrapy第三方框架、如何采集數(shù)據(jù),以及如何通過Selenium采集動態(tài)頁面和手機APP數(shù)據(jù)采集;第2部分即第6章,主要介紹4種常用的數(shù)據(jù)分析方法;第3部分,即第7~第9章,主要通過3種可視化工具介紹數(shù)據(jù)可視化;第4部分即第10章,介紹一個完整的實戰(zhàn)訓練項目,幫助讀者系統(tǒng)地梳理數(shù)據(jù)采集、分析、可視化的整體過程,鞏固理論知識,增加實戰(zhàn)經(jīng)驗。
本書的讀者應具備使用Python語言編程地基本能力。本書可以作為各大院校人工智能、大數(shù)據(jù)相關專業(yè)地教材,也可以作為培訓機構地教材,并適合數(shù)據(jù)處理、數(shù)據(jù)分析、數(shù)據(jù)可視化相關從業(yè)者自學參考。
1.以操作實踐為學習的切入點,而不是直接切入理論講解;
2.以任務為驅動,貫穿知識內(nèi)容;
3.充分考慮學習者的認知曲線,由淺入深,邊講邊練邊切入理論知識;
4.通過項目實訓訓練技能的綜合使用能力。
肖睿,課工場創(chuàng)始人,北京大學教育學博士,北京大學軟件學院特約講師,北京大學學習科學實驗室特約顧問。作為北大青鳥 Aptech 的聯(lián)合創(chuàng)始人,歷任學術總監(jiān)、研究院院長、公司副總裁等核心崗位,擁有20多年的IT職業(yè)教育產(chǎn)品管理和企業(yè)管理經(jīng)驗。于2015年創(chuàng)辦課工場,兼任總經(jīng)理,旨在為大學生提供更可靠的 IT 就業(yè)教育及服務。
第 1章 互聯(lián)網(wǎng)信息采集. 1
任務1.1 了解數(shù)據(jù)采集基礎知識2
1.1.1 數(shù)據(jù)采集的目的和分類 2
1.1.2 數(shù)據(jù)采集需要注意的問題 3
1.1.3 數(shù)據(jù)采集要點3
1.1.4 企業(yè)進行數(shù)據(jù)采集的原因3
任務1.2 理解數(shù)據(jù)采集基本術語的概念 4
1.2.1 網(wǎng)絡爬取 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工具庫實現(xiàn)數(shù)據(jù)采集 14
1.3.1 urllib3 14
1.3.2 Requests 18
1.3.3 Python工具庫數(shù)據(jù)采集實訓 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 采集圖書明細數(shù)據(jù) 26
2.2.1 Scrapy常用命令 27
前言
Python 數(shù)據(jù)分析——從獲取到可視化
2
2.2.2 創(chuàng)建并啟動爬蟲項目. 27
2.2.3 實訓案例:使用Scrapy實現(xiàn)圖書信息采集 31
任務2.3 使用Scrapy Shell解析博客網(wǎng)頁 36
2.3.1 使用Scrapy Shell 36
2.3.2 實訓案例:解析某博客文章網(wǎng)頁的內(nèi)容 36
本章小結 38
本章習題 39
第3章 Scrapy采集框架進階 41
任務3.1 采集前程無憂網(wǎng)站招聘職位信息 42
3.1.1 Scrapy中的Response對象 42
3.1.2 Scrapy中的Request對象 44
3.1.3 XPath選擇器 45
3.1.4 網(wǎng)頁翻頁爬取. 47
3.1.5 不同頁面數(shù)據(jù)采集 49
3.1.6 Item封裝數(shù)據(jù) 50
3.1.7 Request與Response之間傳遞參數(shù)的方法 51
3.1.8 Item Pipeline 53
3.1.9 實訓案例:采集前程無憂網(wǎng)站招聘職位信息 55
任務3.2 采集中國人民大學出版社圖書列表 62
3.2.1 JSON結構 62
3.2.2 實訓案例:采集中國人民大學出版社圖書列表 63
本章小結 66
本章習題 66
第4章 使用“Selenium+Chrome Driver”采集動態(tài)頁面. 69
任務4.1 使用“Selenium+ChromeDriver”采集我愛我家網(wǎng)房源信息. 70
4.1.1 動態(tài)頁面工作流程以及常用動態(tài)頁面采集方式 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 實訓案例:采集我愛我家網(wǎng)“房山”的房源信息. 78
任務4.2 使用“Scrapy+Selenium+ChromeDriver”采集鏈家網(wǎng)房源信息 81
4.2.1 Scrapy框架與Selenium工具結合使用采集動態(tài)頁面的過程. 82
4.2.2 實訓案例:采集鏈家網(wǎng)房源信息 82
本章小結 87
本章習題 87
第5章 App數(shù)據(jù)采集. 89
任務5.1 用Scrapy框架采集檸檬兼職App首頁熱門推薦兼職信息 . 90
5.1.1 App數(shù)據(jù)爬取 . 90
5.1.2 用Charles工具監(jiān)聽網(wǎng)絡請求. 92
5.1.3 用Charles工具監(jiān)聽App 95
5.1.4 用Scrapy框架采集App數(shù)據(jù). 97
5.1.5 實訓案例:采集檸檬兼職App首頁熱門推薦兼職信息 . 98
任務5.2 用Scrapy框架采集中華英才網(wǎng)App的企業(yè)庫信息. 100
5.2.1 HTTPS簡介 101
5.2.2 用Charles工具監(jiān)聽HTTPS網(wǎng)絡請求. 101
5.2.3 客戶端、Charles、服務器之間的HTTPS請求流程 104
5.2.4 用Scrapy框架爬取使用HTTPS通信協(xié)議的App數(shù)據(jù) 105
5.2.5 實訓案例:采集中華英才網(wǎng)App的企業(yè)庫信息. 106
本章小結 108
本章習題 108
第6章 使用Python進行數(shù)據(jù)分析 .109
任務6.1 了解數(shù)據(jù)分析的目的.110
6.1.1 數(shù)據(jù)分析概述110
6.1.2 數(shù)據(jù)分析的目的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數(shù)據(jù)可視化131
任務7.1 使用Matplotlib繪制招聘職位數(shù)量關系的線圖與散點圖 132
7.1.1 進行可視化的原因 132
7.1.2 Matplotlib的安裝方式 133
7.1.3 Matplotlib的核心原理 134
7.1.4 使用Matplotlib繪制招聘職位數(shù)量關系的線圖 . 135
7.1.5 使用Matplotlib繪制房價與房屋面積關系的散點圖 140
任務7.2 使用Matplotlib繪制不同季度不同產(chǎn)品銷售額關系的柱狀圖與餅狀圖. 144
7.2.1 使用Matplotlib繪制不同季度不同產(chǎn)品銷售額關系的柱狀圖 144
7.2.2 使用Matplotlib繪制不同季度單個產(chǎn)品銷售額關系的餅狀圖 149
本章小結 150
本章習題 150
第8章 PyEcharts數(shù)據(jù)可視化.151
任務8.1 使用PyEcharts繪制人數(shù)分布圖 152
8.1.1 PyEcharts可視化工具及其安裝方式 . 152
8.1.2 PyEcharts可視化工具常用基礎知識 . 153
8.1.3 使用PyEcharts繪制某疾病確診人數(shù)分布柱狀圖 154
8.1.4 使用PyEcharts繪制某疾病確診人數(shù)比例餅狀圖 157
8.1.5 使用PyEcharts繪制某疾病確診人數(shù)所占比例關系柱狀圖和線圖. 159
8.1.6 使用PyEcharts繪制某疾病確診人數(shù)分布地圖 162
任務8.2 使用PyEcharts繪制需求關系圖 163
8.2.1 使用PyEcharts中的詞云表示招聘網(wǎng)站中招聘方對崗位需求的關注點. 163
8.2.2 使用PyEcharts繪制對求職者不同能力需求程度的雷達圖. 167
本章小結 169
本章習題 169
第9章 Bokeh數(shù)據(jù)可視化.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年全國司法案件數(shù)量變化折線圖 . 181
任務9.2 使用Bokeh可視化工具以分組柱狀圖的方式展示信息 184
9.2.1 Bokeh可視化工具數(shù)據(jù)交互的方式 . 184
9.2.2 Bokeh可視化工具中的基礎柱狀圖 . 187
9.2.3 實訓案例:繪制2017年~2020年全國司法案件數(shù)量分布的柱狀圖 . 188
任務9.3 使用Bokeh可視化工具以餅狀圖的方式展示信息. 191
9.3.1 使用Bokeh可視化工具中面板及選項卡工具進行數(shù)據(jù)交互的方法. 191
9.3.2 實訓案例:繪制2019年及2020年全國各類司法案件分布餅狀圖 . 192
本章小結 194
本章習題 195
第 10章 項目實戰(zhàn)——房多多網(wǎng)站數(shù)據(jù)獲取與可視化 197
任務10.1 采集房多多網(wǎng)站信息 198
任務10.2 通過數(shù)據(jù)分析方法分析網(wǎng)站源數(shù)據(jù) 209
10.2.1 通過方差分析方法分析朝向、區(qū)域是否對上海房價有顯著影響 . 209
10.2.2 通過回歸分析方法分析上海房價與房屋面積的關系. 210
任務10.3 使用Bokeh工具進行網(wǎng)站源數(shù)據(jù)可視化 212
10.3.1 繪制2020年上海市二手房每日房源新增數(shù)量變的折線圖. 213
10.3.2 繪制2020年上海市房源發(fā)布數(shù)量大于100的地區(qū)分布柱狀圖. 216
10.3.3 使用Bokeh工具繪制2020年、2019年上海市各地區(qū)二手房房源發(fā)布
數(shù)據(jù)分布情況的餅狀圖 217