商品簡介
本書介紹了大數據處理中的數據采集、數據存儲、數據預處理、數據分析與挖掘等內容,還介紹了使用Python語言進行大數據處理的方法。全書共8章。第1章簡要介紹大數據的概念、大數據處理的過程和涉及的不同方面,以及使用Python解決大數據問題的優勢。第2章介紹如何安裝和準備Python編程環境,包括編譯器、集成開發環境(IDE)的安裝,以及第三方包的管理和安裝方法。第3章介紹獲取數據的方法,即如何使用爬蟲技術從網站獲取網頁,並通過解析網頁獲取其中的數據。第4章介紹數據存儲和使用的方法,包括操作常見類型文件的方法,以及操作關係型數據庫和NoSQL數據庫的方法。第5章介紹如何使用NumPy和Pandas操作數組、矩陣以及如何使用其中的隨機數功能。第6章介紹數據預處理的概念,並介紹數據清洗、數據集成、數據轉換和數據規約的方法。第7章介紹數據挖掘的常見模型,並介紹利用scikit-learn進行有監督分類、回歸預測以及聚類分析的方法。第8章介紹數據可視化基礎,包括可視化的過程和如何選擇合適的圖表,並介紹了利用Matplotlib繪製常見的圖表。
本書的第1、2章是基礎,第3~8章分別介紹了大數據處理的某一環節。這些章節的內容相互獨立,讀者在自學時可根據興趣和時間調整學習順序。
本書適合本科院校大數據專業的學生使用。
目次
第1章 大數據基礎 1
1.1 什麼是大數據 1
1.2 大數據處理涉及哪些方面 3
1.3 為什麼用Python解決大數據的問題 5
1.4 關於編程的注意事項 7
練習題 7
第2章 Python環境的準備 8
2.1 Python環境的準備 8
2.1.1 Python 8
2.1.2 Anaconda 10
2.2 集成開發環境 12
2.2.1 PyCharm 12
2.2.2 Spyder 15
2.2.3 IPython和Jupyter 18
2.3 包的管理和維護 19
2.3.1 pip 20
2.3.2 conda和Anaconda 22
2.4 大數據處理常用的擴展包 26
2.4.1 NumPy 26
2.4.2 Pandas 26
2.4.3 Matplotlib 27
2.4.4 SciPy 27
2.4.5 scikit-learn 28
練習題 28
第3章 大數據獲取 29
3.1 如何獲取數據 29
3.2 HTML的基礎知識 30
3.2.1 HTML頁面的獲取與顯示 30
3.2.2 單次請求與響應 32
3.2.3 HTML網頁內容和結構 34
3.3 HTML頁面的解析 36
3.3.1 使用正則表達式提取信息 36
3.3.2 使用XPath提取信息 44
3.3.3 使用BeautifulSoup提取信息 47
3.4 頁面的獲取 59
3.4.1 使用urllib 60
3.4.2 使用requests庫獲取網頁 67
3.4.3 使用selenium獲取網頁 74
3.4.4 網頁抓取面臨的問題 79
3.5 Python爬蟲框架Scrapy 82
練習題 87
第4章 大數據存儲 90
4.1 文件存儲 91
4.1.1 CSV 92
4.1.2 XML 97
4.1.3 JSON 103
4.1.4 Excel 108
4.2 數據庫存儲 110
4.2.1 關係型數據庫通用流程 110
4.2.2 SQLite關係型數據庫 113
4.2.3 MySQL關係型數據庫 118
4.2.4 NoSQL數據庫 125
練習題 129
第5章 大數據的數學基礎 132
5.1 基本的數據結構和運算 132
5.1.1 數組對象的創建與屬性 132
5.1.2 數組對象的元素級運算 138
5.2 矩陣運算 141
5.2.1 數組的合併、拆分及切片 141
5.2.2 矩陣的乘積與線性代數 144
5.3 統計與概率計算 150
5.4 隨機數生成 153
練習題 157
第6章 數據預處理 158
6.1 數據清洗 158
6.1.1 缺失值處理 158
6.1.2 噪聲數據處理 163
6.1.3 數據錯誤發現與修復 167
6.2 數據集成 167
6.3 數據轉換 176
6.3.1 z-score規範化 177
6.3.2 最大最小規範化 182
6.3.3 屬性轉換 184
6.4 數據歸約 186
練習題 187
第7章 數據挖掘與分析 189
7.1 模型選擇與驗證 189
7.1.1 模型選擇 189
7.1.2 模型驗證 190
7.2 分類算法192
7.2.1 分類學習的性能評估 193
7.2.2 邏輯回歸 197
7.2.3 支持向量機 201
7.2.4 樸素貝葉斯 204
7.2.5 決策樹 207
7.2.6 實例分析 211
7.3 回歸預測 215
7.3.1 回歸學習的性能評估 215
7.3.2 線性回歸 216
7.3.3 支持向量機(回歸) 217
7.3.4 等式回歸 218
7.3.5 決策樹(回歸) 218
7.3.6 實例分析 219
7.4 聚類分析 222
7.4.1 基於距離的聚類 223
7.4.2 基於密度的聚類算法 225
7.4.3 基於層次的聚類算法 227
7.4.4 聚類的性能評價 228
7.4.5 實例分析 231
7.5 主成分分析 232
練習題 232
第8章 大數據可視化 235
8.1 數據可視化基礎 235
8.2 使用Matplotlib繪圖 239
8.2.1 準備環境 239
8.2.2 圖表相關的術語 240
8.3 使用Matplotlib繪製常見圖表 242
8.3.1 散點圖 242
8.3.2 折線圖 246
8.3.3 條形圖 248
8.3.4 直方圖 252
8.3.5 面積圖 253
8.3.6 餅圖 254
8.3.7 箱形圖 256
8.4 進階功能 258
8.4.1 子圖 258
8.4.2 中文顯示 262
8.4.3 組合圖形與標注 264
8.5 如何畫出更好的圖 267
練習題 267
參考文獻 271