Python數(shù)據(jù)分析與大數(shù)據(jù)處理從入門到精通
本書總共分五篇,20個章節(jié)。從Python程序設(shè)計入手,然后學(xué)習(xí)數(shù)據(jù)分析與可視化工具、大數(shù)據(jù)存儲與并行計算框架,由淺入深、層層遞進,再通過3個項目實例運用與總結(jié)前三篇內(nèi)容,直到掌握Python大數(shù)據(jù)開發(fā)流程和編程技能。Python程序設(shè)計篇:分6個章節(jié)。主要介紹python的歷史情況與現(xiàn)狀、環(huán)境搭建、pip/ easyinstall軟件包管理、開發(fā)工具、基本的互操作、數(shù)據(jù)類型與邏輯控制、函數(shù)式編程、面向?qū)ο蟪绦蛟O(shè)計、程序異常處理等。 數(shù)據(jù)清洗篇:分2個章節(jié)。主要介紹了數(shù)據(jù)清洗的意義與清洗步驟。主要目的在于刪減無效數(shù)據(jù)、補充合理數(shù)據(jù),防止數(shù)據(jù)傾斜和臟數(shù)據(jù)影響分析結(jié)果。數(shù)據(jù)分析與可視化篇:分4個章節(jié)。主要介紹Numpy科學(xué)計算庫、Pandas數(shù)據(jù)分析處理庫、Matplotlib數(shù)據(jù)可視化Seaborn數(shù)據(jù)可視化。大數(shù)據(jù)存儲與快速分析篇:分5個章節(jié)。主要介紹Hadoop大規(guī)模分布式存儲與資源調(diào)度工具、Spark高性能大數(shù)據(jù)處理工具。本篇中重點圍繞存儲與計算講解。項目實戰(zhàn)篇:分3個章節(jié)。通過電商數(shù)據(jù)、二手房房價、求職網(wǎng)站職位分析3個項目案例融合前面所學(xué)知識,進行項目實戰(zhàn)。從理論走向?qū)嵺`,掌握大數(shù)據(jù)分析的開發(fā)流程和編程技能。 本書內(nèi)容精練、重點突出、實例豐富,是廣大數(shù)據(jù)分析工作者不可或缺的參考書,同時也非常適合大、中專院校師生學(xué)習(xí)閱讀,還可作為高等院校統(tǒng)計分析及相關(guān)專業(yè)的教材。
朱春旭,高級軟件工程師,現(xiàn)任四川華迪信息技術(shù)有限公司培訓(xùn)講師,長期對企業(yè)、軟件開發(fā)公司、政府機構(gòu)培訓(xùn)大數(shù)據(jù)開發(fā)與應(yīng)用課程,非常熟悉python大數(shù)據(jù)處理與分析相關(guān)應(yīng)用,并編寫有《極客內(nèi)參-大數(shù)據(jù)開發(fā)實戰(zhàn)》教程45篇,總共30000+字。內(nèi)容涵蓋docker搭建hadoop、spark集群,和mapreduce編程案例、spark編程案例、利用springcloud搭建微服務(wù)案例。
第1篇 Python程序設(shè)計
第1章 Python入門 3
1.1 Python概述 4
1.2 搭建Python開發(fā)環(huán)境 6
1.3 Python開發(fā)工具介紹 11
1.4 Python軟件包的管理 13
1.5 實訓(xùn):編寫“Hello World” 15
本章小結(jié) 16
第2章 Python基礎(chǔ) 17
2.1 變量 18
2.2 標(biāo)識符 24
2.3 代碼組織 26
2.4 輸入與輸出 28
2.5 運算符與優(yōu)先級 30
2.6 新手問答 30
2.7 實訓(xùn):設(shè)計一個簡易計算器 31
本章小結(jié) 31
第3章 數(shù)據(jù)類型與流程控制 32
3.1 數(shù)字類型 33
3.2 字符串類型 37
3.3 集合類型 40
3.4 流程控制語句 45
3.5 新手問答 47
3.6 實訓(xùn):設(shè)計算法,輸出乘法表 49
本章小結(jié) 50
第4章 函數(shù)、模塊、包 51
4.1 自定義函數(shù) 52
4.2 函數(shù)參數(shù) 55
4.3 函數(shù)式編程 58
4.4 模塊與包 63
4.5 新手問答 65
4.6 實訓(xùn):設(shè)計算法,對列表進行排序 67
本章小結(jié) 68
第5章 面向?qū)ο蟮某绦蛟O(shè)計 69
5.1 面向?qū)ο?70
5.2 自定義類 71
5.3 屬性 73
5.4 方法 79
5.5 類的繼承 83
5.6 可調(diào)用對象 86
5.7 不可變對象 87
5.8 新手問答 88
5.9 實訓(xùn):設(shè)計算法,構(gòu)造一棵二叉樹 90
本章小結(jié) 92
第6章 高級主題 93
6.1 生成器 94
6.2 迭代器 96
6.3 異步處理 97
6.4 錯誤、調(diào)試 103
6.5 新手問答 108
6.6 實訓(xùn):使用多進程技術(shù)統(tǒng)計數(shù)據(jù)并匯總 109
本章小結(jié) 110
第2篇 數(shù)據(jù)采集與數(shù)據(jù)清洗
第7章 網(wǎng)絡(luò)數(shù)據(jù)采集 113
7.1 HTTP請求概述 114
7.2 XPath網(wǎng)頁解析 114
7.3 Scrapy數(shù)據(jù)采集入門 119
7.4 Scrapy應(yīng)對反爬蟲程序 126
7.5 CrawlSpider類 131
7.6 分布式爬蟲 132
7.7 新手問答 136
7.8 實訓(xùn):構(gòu)建百度云音樂爬蟲 136
本章小結(jié) 139
第8章 數(shù)據(jù)清洗 140
8.1 數(shù)據(jù)清洗的意義 141
8.2 數(shù)據(jù)清洗的內(nèi)容 141
8.3 數(shù)據(jù)格式與存儲類型 142
8.4 數(shù)據(jù)清洗的步驟 145
8.5 數(shù)據(jù)清洗的工具 147
8.6 新手問答 151
8.7 實訓(xùn):清洗百度云音樂數(shù)據(jù)并儲存到CSV 151
本章小結(jié) 152
第3篇 數(shù)據(jù)分析與可視化
第9章 NumPy數(shù)值計算 155
9.1 NumPy基礎(chǔ) 156
9.2 形狀操作 164
9.3 副本、淺拷貝和深拷貝 166
9.4 高級索引 168
9.5 排序統(tǒng)計 171
9.6 新手問答 173
9.7 實訓(xùn):銷售額統(tǒng)計 174
本章小結(jié) 175
第10章 Matplotlib可視化 176
10.1 圖形的基本要素 177
10.2 繪圖基礎(chǔ) 177
10.3 設(shè)置樣式 186
10.4 圖形樣例 189
10.5 新手問答 198
10.6 實訓(xùn):營業(yè)數(shù)據(jù)可視化 199
本章小結(jié) 201
第11章 Pandas統(tǒng)計分析 202
11.1 Pandas數(shù)據(jù)結(jié)構(gòu) 203
11.2 基礎(chǔ)功能 210
11.3 統(tǒng)計分析 217
11.4 時間數(shù)據(jù) 229
11.5 數(shù)據(jù)整理 231
11.6 高級功能 234
11.7 讀寫MySQL數(shù)據(jù)庫 236
11.8 新手問答 237
11.9 實訓(xùn):成績分析 237
本章小結(jié) 239
第12章 Seaborn可視化 240
12.1 Seaborn概述 241
12.2 可視化數(shù)據(jù)關(guān)系 242
12.3 根據(jù)數(shù)據(jù)分類繪圖 246
12.4 單變量與雙變量 251
12.5 線性關(guān)系 256
12.6 新手問答 258
12.7 實訓(xùn):成績分析可視化 258
本章小結(jié) 260
第4篇 大數(shù)據(jù)存儲與快速分析篇
第13章 Hadoop數(shù)據(jù)存儲與基本操作 263
13.1 Hadoop概述 264
13.2 Hadoop數(shù)據(jù)存儲與任務(wù)調(diào)度原理 268
13.3 Hadoop基礎(chǔ)環(huán)境搭建 273
13.4 Hadoop部署模式 294
13.5 Hadoop常用操作命令 298
13.6 新手問答 300
13.7 實訓(xùn):動手搭建Hadoop集群環(huán)境 301
本章小結(jié) 309
第14章 Spark入門 310
14.1 Spark概述 311
14.2 Spark核心原理 312
14.3 Spark基礎(chǔ)環(huán)境搭建 315
14.4 Spark運行模式 317
14.5 新手問答 321
14.6 實訓(xùn):動手搭建Spark集群 322
本章小結(jié) 323
第15章 Spark RDD編程 324
15.1 RDD設(shè)計原理 325
15.2 RDD編程 328
15.3 鍵值對RDD 335
15.4 文件讀寫 340
15.5 編程進階 342
15.6 新手問答 347
15.7 實訓(xùn):統(tǒng)計海鮮銷售情況 348
本章小結(jié) 350
第16章 Spark SQL編程 351
16.1 Spark SQL概述 352
16.2 創(chuàng)建DataFrame對象 360
16.3 DataFrame常用API 364
16.4 保存DataFrame 370
16.5 新手問答 372
16.6 實訓(xùn):統(tǒng)計手機銷售情況 373
本章小結(jié) 375
第17章 Spark流式計算編程 376
17.1 流計算簡介 377
17.2 Discretized Stream 379
17.3 Structured Streaming 385
17.4 新手問答 397
17.5 實訓(xùn):實時統(tǒng)計貸款金額 397
本章小結(jié) 398
第5篇 項目實戰(zhàn)篇
第18章 分析電商網(wǎng)站銷售數(shù)據(jù) 401
18.1 目標(biāo)分析 402
18.2 數(shù)據(jù)采集 405
18.3 數(shù)據(jù)分析 411
本章小結(jié) 416
第19章 分析旅游網(wǎng)站數(shù)據(jù) 417
19.1 目標(biāo)分析 418
19.2 數(shù)據(jù)采集 420
19.3 數(shù)據(jù)分析 425
本章小結(jié) 429
第20章 分析在售二手房數(shù)據(jù) 430
20.1 目標(biāo)分析 431
20.2 數(shù)據(jù)采集 434
20.3 數(shù)據(jù)分析 440
本章小結(jié) 446
附錄:Python常見面試題精選 447
主要參考文獻 450