商品簡介
本書結合作者十餘年軟件開發、系統架構、算法實戰及培訓經驗,致力於系統地闡釋Python大數據和機器學習技術。從數據的採集、存儲、清洗;到建立模型、統計分析;最終用前端程序呈現給用戶的數據展示;以及後臺的系統服務支持。結合了Python數據工具使用、算法原理、以及典型實例各個層面,希望讀者通過對本書的閱讀,少走彎路,以最小的學習成本得到最大的知識收益。
作者簡介
謝彥,從事軟件開發和算法研發十餘年,曾就職於聯想研究院、元心科技等公司。參與研發機頂盒、上網本、智能手機操作系統,工作涉及上層應用、集群構建、圖形底層優、語音合成與識別、數據挖掘、深度學習算法等。帶領團隊經驗豐富,擅長團隊內部人才培訓。
個人開發的應用“天琴語音閱讀器”用戶數達百萬量級,近兩年撰寫數據挖掘和機器學習文章百餘篇,CSDN閱讀量100多萬人次。現就職於和興創聯健康科技有限公司,專注於醫療大數據應用研發。作者的公眾號:算法學習分享。
名人推薦
很系統:闡釋數據工作的全貌,具有全域思維。
重實踐:講解13個基礎算法和7類統計學方法很典型:囊括6大綜合實例,每個實例針對一種典型的問題超易懂:內容通俗易懂,加入了大量舉例和相關基礎知識
目次
目 錄
第1章 Python大數據開發入門 1
1.1 大數據工程師必備技能 1
1.2 Python開發環境 5
1.2.1 Windows環境 5
1.2.2 Linux環境 7
1.2.3 Docker環境 10
1.3 Python開發工具 16
1.3.1 Python命令行環境 16
1.3.2 Jupyter環境 18
1.4 Python數據類型 23
1.4.1 數值 24
1.4.2 字符串 24
1.4.3 列表 25
1.4.4 元組 26
1.4.5 集合 26
1.4.6 字典 27
1.5 Python函數和類 27
1.5.1 定義和使用函數 28
1.5.2 lambda匿名函數 28
1.5.3 類和繼承 28
1.6 Python常用庫 29
1.6.1 Python內置庫 29
1.6.2 Python圖形圖像處理 30
1.6.3 Python自然語言處理 31
1.6.4 Python數據分析和
處理 32
1.6.5 Python機器學習 33
1.7 Python技巧 34
1.7.1 Python程序調試 34
1.7.2 去掉警告信息 35
1.7.3 製作和導入模塊 36
1.7.4 異常處理 37
1.8 Python常見問題 38
第2章 科學計算Numpy 40
2.1 多維數組 40
2.1.1 創建數組 40
2.1.2 訪問數組 42
2.1.3 修改數組 43
2.2 數組元素運算 44
2.2.1 一元函數 44
2.2.2 二元函數 45
2.2.3 廣播 46
2.2.4 自定義ufunc函數 47
2.3 常用函數 48
2.3.1 分段函數 48
2.3.2 統計函數 49
2.3.3 組合與分割 51
2.3.4 矩陣與二維數組 52
2.3.5 其他常用函數 54
第3章 數據操作Pandas 55
3.1 數據對象 55
3.1.1 Series對象 55
3.1.2 DataFrame對象 57
3.1.3 Index對象 60
3.2 數據存取 63
3.2.1 訪問數據表元素 63
3.2.2 修改數據表元素 66
3.3 分組運算 68
3.3.1 分組 69
3.3.2 聚合 70
3.3.3 轉換 71
3.3.4 過濾 72
3.3.5 應用 72
3.4 日期時間處理 73
3.4.1 Python日期時間處理 73
3.4.2 Pandas日期時間處理 75
3.4.3 時間序列操作 76
3.4.4 數據重排 84
第4章 數據可視化 86
4.1 Matplotlib繪圖庫 87
4.1.1 準備工作 87
4.1.2 散點圖與氣泡圖 88
4.1.3 線圖 90
4.1.4 柱圖 92
4.1.5 餅圖 95
4.1.6 箱線圖和小提琴圖 96
4.1.7 三維圖 97
4.1.8 Matplotlib繪圖區域 100
4.1.9 文字顯示問題 103
4.1.10 導出圖表 104
4.1.11 Matplotlib技巧 105
4.2 Seaborn高級數據可視化 107
4.2.1 準備工作 107
4.2.2 連續變量相關圖 108
4.2.3 分類變量圖 109
4.2.4 回歸圖 113
4.2.5 多圖組合 115
4.2.6 熱力圖 118
4.2.7 印刷品作圖 119
4.3 PyEcharts交互圖 119
4.3.1 ECharts 119
4.3.2 準備工作 120
4.3.3 繪製交互圖 120
4.3.4 在網頁中顯示圖 123
第5章 獲取數據 125
5.1 讀寫文件 126
5.1.1 讀寫文本文件 126
5.1.2 寫日誌文件 127
5.1.3 讀寫XML文件 128
5.1.4 讀寫Json文件 130
5.1.5 讀寫CSV文件 131
5.1.6 讀寫PKL文件 132
5.1.7 讀寫HDF5文件 133
5.1.8 讀寫Excel文件 134
5.2 讀寫數據庫 135
5.2.1 數據庫基本操作 136
5.2.2 Python存取MySQL
數據庫 138
5.2.3 Python存取SQL Server
數據庫 140
5.2.4 Python存取Sqlite
數據庫 143
5.2.5 Python存取Dbase
數據庫 143
5.3 讀寫數據倉庫 144
5.3.1 讀取ElasticSearch
數據 144
5.3.2 讀取S3雲存儲數據 146
5.3.3 讀取Hive數據 148
5.4 獲取網絡數據 151
5.4.1 從網絡接口讀取
數據 151
5.4.2 抓取網站數據 152
5.4.3 使用POST方法抓取
數據 153
5.4.4 轉換HTML文件 153
5.5 選擇數據存儲方式 154
第6章 數據預處理 155
6.1 數據類型識別與轉換 155
6.1.1 基本類型轉換 156
6.1.2 數據類型識別 157
6.2 數據清洗 158
6.2.1 缺失值處理 158
6.2.2 異常值處理 160
6.2.3 去重處理 162
6.3 數據歸約 163
6.3.1 經驗篩選特徵 163
6.3.2 統計學方法篩選
特徵 163
6.3.3 模型篩選特徵 164
6.3.4 數學方法降維 165
6.4 數據抽樣 166
6.4.1 簡單隨機抽樣 167
6.4.2 系統抽樣 168
6.4.3 分層抽樣 168
6.4.4 整群抽樣 168
6.5 數據組合 169
6.5.1 merge函數 169
6.5.2 concat函數 170
6.6 特徵提取 171
6.6.1 數值型特徵 171
6.6.2 分類型特徵 171
6.6.3 字符型特徵 172
第7章 數據分析 175
7.1 入門實例 175
7.2 假設檢驗 177
7.2.1 基本概念 177
7.2.2 假設檢驗的步驟 178
7.2.3 統計分析工具 178
7.3 參數檢驗與非參數檢驗 179
7.3.1 正態性檢驗 179
7.3.2 方差齊性檢驗 181
7.3.3 分析檢驗結果 182
7.4 T檢驗 182
7.4.1 單樣本T檢驗 182
7.4.2 獨立樣本T檢驗 183
7.4.3 配對樣本T檢驗 183
7.5 方差分析 184
7.6 秩和檢驗 185
7.7 卡方檢驗 186
7.8 相關性分析 187
7.8.1 圖形描述相關性 188
7.8.2 正態資料的相關
分析 189
7.8.3 非正態資料的相關
分析 190
7.9 變量分析 190
7.9.1 單變量分析 190
7.9.2 多變量分析 191
7.10 TableOne工具 193
7.11 統計方法總結 194
第8章 機器學習基礎知識 196
8.1 基本概念 196
8.1.1 深度學習、機器學習、
人工智能 197
8.1.2 有監督學習、無監督
學習、半監督學習 197
8.1.3 訓練集、驗證集、
測試集 198
8.1.4 過擬合與欠擬合 198
8.1.5 常用術語 199
8.2 評價模型 199
8.2.1 方差、協方差、協
方差矩陣 200
8.2.2 距離與範數 204
8.2.3 回歸效果評估 207
8.2.4 分類效果評估 210
第9章 機器學習模型與工具 216
9.1 基於距離的算法 217
9.1.1 K近鄰算法 217
9.1.2 聚類算法 219
9.2 線性回歸與邏輯回歸 221
9.2.1 線性回歸 222
9.2.2 邏輯回歸 225
9.3 支持向量機 226
9.4 信息熵和決策樹 230
9.4.1 信息量和熵 231
9.4.2 決策樹 234
9.5 關聯規則 236
9.5.1 Apriori關聯規則 237
9.5.2 FP-Growth關聯
分析 240
9.6 貝葉斯模型 242
9.6.1 貝葉斯公式 242
9.6.2 樸素貝葉斯算法 244
9.6.3 貝葉斯網絡 248
9.7 隱馬爾可夫模型 250
9.8 集成算法 254
第10章 模型選擇與相關技術 259
10.1 數據準備與模型選擇 259
10.1.1 預處理 259
10.1.2 選擇模型 260
10.2 自動機器學習框架 263
10.2.1 框架原理 263
10.2.2 Auto-Sklearn 264
10.2.3 Auto-ML 266
10.2.4 Auto-Keras 267
10.3 自然語言處理 269
10.3.1 分詞工具 269
10.3.2 TF-IDF 271
10.4 建模相關技術 274
10.4.1 切分數據集與交叉
驗證 274
10.4.2 模型調參 276
10.4.3 學習曲線和驗證
曲線 279
10.4.4 保存模型 282
第11章 大數據競賽平臺 283
11.1 定義問題 283
11.1.1 強人工智能與弱
人工智能 284
11.1.2 Datathon競賽 285
11.2 算法競賽 286
11.2.1 大數據競賽平臺
優勢 287
11.2.2 Kaggle大數據
平臺 288
11.2.3 實戰