如今,大數(shù)據(jù)已成為推動社會進步與產(chǎn)業(yè)升級的重要力量。從商業(yè)智能到科學研究,從城市管理到個人生活,大數(shù)據(jù)的應用無處不在,深刻改變著世界。然而,大數(shù)據(jù)需要經(jīng)過精心的采集、預處理與可視化,才能轉(zhuǎn)化為有價值的信息和知識。
本書基于這一背景,通過深入淺出的講解和豐富的案例演示,幫助讀者理解大數(shù)據(jù)的基本概念、生態(tài)系統(tǒng)和實際應用,數(shù)據(jù)采集、預處理與可視化的各個環(huán)節(jié),以及如何使用Python編程語言來實現(xiàn)這些過程。
本書共5部分。在基礎(chǔ)理論部分,將帶領(lǐng)讀者走進大數(shù)據(jù)的世界,了解大數(shù)據(jù)的基本概念、特征、發(fā)展歷史、生態(tài)系統(tǒng)及實際應用; 在數(shù)據(jù)采集部分,將詳細介紹數(shù)據(jù)采集的基本概念、特征、方法和技術(shù),并重點講解如何使用Python進行網(wǎng)絡(luò)數(shù)據(jù)采集,包括網(wǎng)絡(luò)爬蟲基礎(chǔ)及Scrapy框架和Selenium庫的應用; 在數(shù)據(jù)預處理部分,將深入探討數(shù)據(jù)清理、數(shù)據(jù)集成、數(shù)據(jù)歸約、數(shù)據(jù)轉(zhuǎn)換等關(guān)鍵技術(shù),并介紹如何使用NumPy和Pandas這兩個強大的Python庫來進行數(shù)據(jù)預處理; 在數(shù)據(jù)可視化部分,將講解數(shù)據(jù)可視化的發(fā)展歷史、分類和應用,并展示如何使用Matplotlib等Python庫來繪制各種類型的圖表,從而直觀展示數(shù)據(jù)的內(nèi)在規(guī)律和趨勢; 在案例部分,將展示使用Python進行數(shù)據(jù)采集、預處理與可視化的全過程。通過閱讀本書,讀者將能夠掌握數(shù)據(jù)處理與分析的核心技能,提升數(shù)據(jù)素養(yǎng)和數(shù)據(jù)分析能力,為未來的職業(yè)發(fā)展打下堅實的基礎(chǔ)。
本書的作者為呂云翔、姚澤良、宗堅、楊壯、韓延剛、仇善召、朱英豪、張揚,此外,曾洪立參與了部分內(nèi)容的編寫并進行了素材整理及配套資源制作等。
由于作者水平和能力有限,本書難免有疏漏之處。懇請各位同仁和廣大讀者給予批評指正,也希望各位讀者將實踐過程中的經(jīng)驗和心得與我們交流。
作者2025年5月
第1部分基礎(chǔ)理論
第1章大數(shù)據(jù)概述
1.1大數(shù)據(jù)基礎(chǔ)
1.1.1大數(shù)據(jù)的基本概念
1.1.2大數(shù)據(jù)的5V特征
1.1.3大數(shù)據(jù)的發(fā)展歷程
1.2大數(shù)據(jù)生態(tài)系統(tǒng)
1.2.1Hadoop
1.2.2Spark
1.3大數(shù)據(jù)的實際應用
1.3.1大數(shù)據(jù)的應用領(lǐng)域
1.3.2大數(shù)據(jù)面臨的挑戰(zhàn)
思考與練習
章節(jié)實訓: 大數(shù)據(jù)軟件生態(tài)探索
第2部分數(shù)據(jù)采集
第2章數(shù)據(jù)采集基礎(chǔ)
2.1數(shù)據(jù)采集的基本概念和特征
2.1.1數(shù)據(jù)采集的基本概念
2.1.2數(shù)據(jù)采集的特征
2.2數(shù)據(jù)采集的方法
2.2.1數(shù)據(jù)庫采集
2.2.2系統(tǒng)日志采集
2.2.3網(wǎng)絡(luò)數(shù)據(jù)采集
2.2.4傳感器采集
2.2.5眾包采集
2.3數(shù)據(jù)采集的技術(shù)
2.3.1網(wǎng)絡(luò)爬蟲
2.3.2數(shù)據(jù)抽取技術(shù)
2.4數(shù)據(jù)采集工具介紹
思考與練習
章節(jié)實訓: 利用Octoparse采集網(wǎng)站數(shù)據(jù)
第3章Python網(wǎng)絡(luò)數(shù)據(jù)采集
3.1網(wǎng)絡(luò)爬蟲基礎(chǔ)
3.1.1HTML
3.1.2HTTP
3.1.3JavaScript
3.1.4Robots協(xié)議
3.2Python爬蟲基礎(chǔ)庫編寫爬蟲
3.2.1Requests庫采集網(wǎng)頁
3.2.2BeautifulSoup庫解析網(wǎng)頁
3.3Scrapy框架構(gòu)建爬蟲
3.3.1Scrapy框架簡介
3.3.2Scrapy框架安裝
3.3.3Scrapy框架爬蟲編寫
3.4Selenium庫模擬人工爬蟲
3.4.1Selenium庫簡介
3.4.2Selenium庫與瀏覽器驅(qū)動安裝
3.4.3Selenium庫爬蟲編寫
思考與練習
章節(jié)實訓: 股票報告爬蟲編寫
第3部分數(shù)據(jù)預處理
第4章數(shù)據(jù)預處理基礎(chǔ)
4.1概述
4.1.1數(shù)據(jù)預處理的意義
4.1.2數(shù)據(jù)預處理的分類
4.2數(shù)據(jù)清理
4.2.1內(nèi)容格式錯誤數(shù)據(jù)處理
4.2.2缺失值處理
4.2.3噪聲數(shù)據(jù)處理
4.2.4重復數(shù)據(jù)處理
4.3數(shù)據(jù)集成
4.3.1實體識別問題
4.3.2冗余問題
4.3.3沖突數(shù)據(jù)值的檢測與處理
4.4數(shù)據(jù)歸約
4.4.1維度歸約
4.4.2數(shù)量歸約
4.4.3數(shù)據(jù)壓縮
4.5數(shù)據(jù)轉(zhuǎn)換
4.5.1數(shù)據(jù)離散化
4.5.2數(shù)據(jù)標準化
4.5.3對數(shù)變換與指數(shù)變換
4.5.4數(shù)據(jù)脫敏
思考與練習
章節(jié)實訓: 文本數(shù)據(jù)預處理
第5章Python數(shù)據(jù)預處理
5.1科學計算庫NumPy
5.1.1NumPy介紹與安裝
5.1.2NumPy的數(shù)據(jù)結(jié)構(gòu)與索引
5.1.3NumPy的數(shù)據(jù)類型與轉(zhuǎn)換
5.1.4NumPy的數(shù)學運算
5.1.5NumPy常用的數(shù)學函數(shù)
5.1.6Numpy缺失值、異常值和重復值的處理
5.2數(shù)據(jù)分析庫Pandas
5.2.1Pandas介紹與安裝
5.2.2Pandas的數(shù)據(jù)結(jié)構(gòu)與索引
5.2.3Pandas的數(shù)據(jù)類型與轉(zhuǎn)換
5.2.4Pandas的數(shù)據(jù)輸入與輸出
5.2.5Pandas常用的數(shù)學函數(shù)
5.2.6Pandas缺失值、異常值和重復值處理
5.2.7apply()函數(shù)
5.2.8Pandas數(shù)據(jù)分組
5.2.9Pandas數(shù)據(jù)合并
思考與練習
章節(jié)實訓: 空氣質(zhì)量分析
第4部分數(shù)據(jù)可視化
第6章數(shù)據(jù)可視化基礎(chǔ)
6.1數(shù)據(jù)可視化概述
6.1.1數(shù)據(jù)可視化的發(fā)展歷史
6.1.2數(shù)據(jù)可視化的分類
6.2時間數(shù)據(jù)可視化
6.2.1時間數(shù)據(jù)可視化的方法
6.2.2時間數(shù)據(jù)可視化的應用
6.3比例數(shù)據(jù)可視化
6.3.1比例數(shù)據(jù)可視化的方法
6.3.2比例數(shù)據(jù)可視化的應用
6.4關(guān)系數(shù)據(jù)可視化
6.4.1關(guān)系數(shù)據(jù)可視化的方法
6.4.2關(guān)系數(shù)據(jù)可視化的應用
6.5文本數(shù)據(jù)可視化
6.5.1文本數(shù)據(jù)可視化的方法
6.5.2文本數(shù)據(jù)可視化的應用
6.6復雜數(shù)據(jù)可視化
6.6.1復雜數(shù)據(jù)可視化的方法
6.6.2復雜數(shù)據(jù)可視化的應用
思考與練習
章節(jié)實訓: 可視化圖表繪制
第7章Python數(shù)據(jù)可視化
7.1Python數(shù)據(jù)可視化庫概述
7.1.1Matplotlib
7.1.2Seaborn
7.1.3pyecharts
7.1.4NetworkX
7.1.5wordcloud
7.2Matplotlib圖表繪制
7.2.1Matplotlib安裝
7.2.2Matplotlib繪圖
7.2.3Matplotlib繪圖參數(shù)設(shè)置
7.3Seaborn圖表繪制
7.3.1Seaborn安裝
7.3.2Seaborn繪圖
7.3.3Seaborn繪圖參數(shù)設(shè)置
7.4pyecharts圖表繪制
7.4.1pyecharts安裝
7.4.2pyecharts繪圖
7.4.3pyecharts繪圖參數(shù)設(shè)置
7.5NetworkX圖表繪制
7.5.1NetworkX安裝
7.5.2NetworkX繪圖
7.5.3NetworkX繪圖參數(shù)設(shè)置
7.6wordcloud圖表繪制
7.6.1wordcloud安裝
7.6.2wordcloud繪圖
7.6.3wordcloud繪圖參數(shù)設(shè)置
思考與練習
章節(jié)實訓: 繪制可視化圖表
第5部分應用案例
第8章案例: 用戶消費行為分析
8.1RFM模型簡介
8.2數(shù)據(jù)讀入
8.3數(shù)據(jù)清洗和預處理
8.3.1數(shù)據(jù)清洗
8.3.2數(shù)據(jù)預處理
8.4RFM統(tǒng)計量計算
8.5RFM歸類
8.6結(jié)果保存
8.7可視化結(jié)果
第9章案例: 爬取二手房房價數(shù)據(jù)并繪制熱力圖
9.1數(shù)據(jù)抓取
9.1.1分析網(wǎng)頁
9.1.2地址轉(zhuǎn)換成經(jīng)緯度
9.1.3編寫代碼
9.1.4數(shù)據(jù)下載結(jié)果
9.2繪制熱力圖
第10章案例: 使用Spark實現(xiàn)數(shù)據(jù)統(tǒng)計分析及性能優(yōu)化
10.1背景
10.2系統(tǒng)架構(gòu)
10.2.1總體方案
10.2.2詳細設(shè)計
10.2.3優(yōu)化設(shè)計
10.3具體實現(xiàn)
10.3.1數(shù)據(jù)獲取
10.3.2數(shù)據(jù)可視化
10.4性能優(yōu)化
10.4.1讀取優(yōu)化
10.4.2查詢優(yōu)化
10.4.3Spark參數(shù)級優(yōu)化