本書介紹利用Python進行大數據處理與分析的詳細方法和步驟。全書共9章,主要內容包括搭建開發(fā)環(huán)境、Numpy庫、Pandas庫、Matplotlib庫、數據預處理以及多個案例分析。本書注重理論緊密聯系實際,使讀者可以系統(tǒng)、全面地了解Python大數據處理與分析的實用技術和方法。
本書可作為高等院校Python大數據處理與分析相關課程的教材,也可以作為計算機相關專業(yè)的專業(yè)課或選修課教材,同時還可以作為從事Python與大數據技術相關工作人員的參考用書。
1.本書為計算機類專業(yè)教指委-華為大數據產學合作項目之一
2.Python的基本庫——NumPy、Pandas和Matplotlib庫+4個處理與分析的案例
3.提供PPT、源代碼
4.適合開設Python或者大數據技術相關課程的高校作為教材使用,也適合從事Python與大數據技術相關工作的人員自用
安俊秀,教授,碩士生導師。2004年畢業(yè)于西安交通大學計算機科學與技術專業(yè),獲工學碩士學位。2016年-2017年美國加州大學河濱分校(UCR)公派訪問學者,2014年-2015年美國科羅拉多大學斯普林司分校(UCCS)訪問學者。軟件自動生成與智能服務四川省重點實驗室學術帶頭人(領域知識本體和大數據方向)。作為項目負責人承擔國家自然基金面上項目1項(71673032),作為主研人員參與國家級項目6項。已發(fā)表研究領域相關論文及發(fā)明專利40余篇。主編完成專著或教材10余部,均是云計算與大數據方向,由國家級出版社出版(如Linux操作系統(tǒng)基礎教程、Hadoop大數據處理技術基礎與實踐、云計算與大數據技術應用等),其中2016年出版了有影響力的獨著:量化社會——大數據與社會計算。國家自然科學基金委通訊評審專家,四川省科技項目評審專家,成都市科技攻關計劃評審專家,成都軍區(qū)項目評審專家。
1993年進入山西大學商務學院任教,2006年底調入成都信息工程大學任教。
最近三年,先后承擔了《Linux體系和編程》、《軟件工程項目管理》、《工程導論》、《計算機組成原理》等本科課程;承擔了《云計算與大數據》、《并行計算》、《Hadoop處理技術》等研究生課程。
第 一部分 基礎篇
第 1章 搭建開發(fā)環(huán)境 2
1.1 Python解釋器的安裝 2
1.1.1 在Windows系統(tǒng)下安裝Python解釋器 2
1.1.2 在Linux系統(tǒng)下安裝Python解釋器 6
1.1.3 在macOS系統(tǒng)下安裝Python解釋器 10
1.1.4 運行第 一個hello world程序 12
1.2 Anaconda的安裝及環(huán)境變量配置 12
1.2.1 Anaconda簡介 12
1.2.2 安裝Anaconda 14
1.2.3 配置Anaconda環(huán)境變量 16
1.3 Jupyter Notebook與PyCharm的安裝及工程環(huán)境設置 17
1.3.1 Jupyter Notebook的簡介與安裝 18
1.3.2 設置Jupyter Notebook工程環(huán)境 19
1.3.3 PyCharm的簡介與安裝 23
1.3.4 設置PyCharm工程環(huán)境 25
習題 28
第 2章 使用NumPy進行數據
計算 29
2.1 安裝NumPy 29
2.2 NumPy中的數組對象 30
2.2.1 數組對象的創(chuàng)建 31
2.2.2 數組對象的常用屬性 34
2.2.3 數組元素的訪問與修改 36
2.2.4 數組對象的基礎運算 37
2.2.5 數組對象的常用函數 38
2.3 使用NumPy進行數學運算 42
2.3.1 位運算函數 42
2.3.2 數學函數 44
2.3.3 算術函數 45
2.3.4 統(tǒng)計函數 47
2.3.5 線性代數函數 49
2.4 NumPy使用案例 52
習題 53
第3章 使用pandas進行數據分析 54
3.1 安裝pandas 54
3.2 pandas中的對象 55
3.2.1 Series對象 56
3.2.2 DataFrame對象 57
3.3 pandas的基本操作 58
3.3.1 導入與導出數據 59
3.3.2 數據的查看與檢查 60
3.3.3 數據的增刪查改 62
3.4 pandas的基本運用 64
3.4.1 數據統(tǒng)計 64
3.4.2 算術運算與數據對齊 66
3.5 pandas使用案例 68
習題 70
第4章 Matplotlib數據
可視化 71
4.1 安裝Matplotlib與繪圖基本步驟 71
4.1.1 安裝Matplotlib 71
4.1.2 Matplotlib繪圖基本步驟 72
4.2 經典圖形繪制 74
4.2.1 折線圖 74
4.2.2 柱狀圖 77
4.2.3 直方圖 80
4.2.4 散點圖 82
4.2.5 等值線圖及地理信息可視化 86
4.3 圖表調整及美化 92
4.3.1 圖表主要組成元素調整 92
4.3.2 顏色參數及映射表 97
4.4 Matplotlib使用案例 98
習題 102
第5章 數據預處理 103
5.1 數據清洗與準備 103
5.1.1 數據清洗準備 103
5.1.2 數據清洗 104
5.2 正則表達式 108
5.2.1 正則表達式的特點與組成 108
5.2.2 字符串方法 109
5.2.3 re模塊 113
5.3 數據規(guī)整 117
5.3.1 聚合、分組及數據透視 117
5.3.2 特征選擇(降維) 120
5.3.3 數據變換與數據規(guī)約 122
5.3.4 稀疏表示和字典學習 124
習題 126
第二部分 實例篇
第6章 基于大數據的房產估價 128
6.1 情景問題提出及分析 128
6.2 多元回歸模型介紹 128
6.3 方法與過程 129
6.3.1 讀入數據并進行數據預處理 130
6.3.2 將預處理好的數據可視化 141
6.3.3 使用多元回歸模型進行房產估價 146
6.3.4 模型效果評價 148
上機實驗 151
第7章 某移動公司客戶價值分析 152
7.1 情景問題提出及分析 152
7.2 K-Means聚類算法簡介 153
7.3 客戶價值分析過程 155
7.3.1 讀入數據并進行數據預處理 156
7.3.2 數據標準化 165
7.3.3 使用K-Means聚類算法對客戶進行分析 167
7.3.4 數據可視化及數據分析 172
上機實驗 178
第8章 基于歷史數據的氣溫及降水預測 179
8.1 情景問題提出及分析 179
8.2 常見的時間序列模型簡介 180
8.2.1 AR模型 180
8.2.2 MA模型 181
8.2.3 ARMA模型 181
8.2.4 ARIMA模型 182
8.2.5 模型求解步驟 183
8.3 平穩(wěn)序列建模示例(降水預測) 186
8.3.1 讀入數據并進行預處理 186
8.3.2 時間序列的平穩(wěn)性分析 190
8.3.3 模型選擇及定階 191
8.3.4 建立時序模型并預測 193
8.4 非平穩(wěn)序列建模示例(氣溫預測) 195
8.4.1 讀入數據并進行預處理 195
8.4.2 時間序列的平穩(wěn)性分析 197
8.4.3 模型選擇及定階 198
8.4.4 建立時序模型并預測 200
上機實驗 202
第9章 智能電網的電能預估及價值分析 203
9.1 情景問題提出及分析 203
9.2 決策樹算法簡介 203
9.2.1 ID3算法 205
9.2.2 C4.5算法 207
9.2.3 CART算法 208
9.2.4 預剪枝與后剪枝 208
9.2.5 連續(xù)值處理 209
9.3 方法與過程 211
9.3.1 讀入數據并預處理 211
9.3.2 模型構建 218
9.3.3 模型效果評價 221
上機實驗 221
參考文獻 223