Python和Dask數據科學

Python和Dask數據科學

作者: [美] 傑西·丹尼爾(Jesse C. Daniel) 王穎 周致成 王龍江 譯 田禮悅 審校
出版社: 清華大學
出版在: 2020-06-01
ISBN-13: 9787302553786
ISBN-10: 7302553785





內容描述


主要內容
● 處理大型的結構化和非結構化數據集
● 使用Seaborn和Datashader實現可視化
● 實現自己的算法
● 構建分佈式應用
● 打包和部署Dask應用


目錄大綱


目    錄
 
第Ⅰ部分  可擴展計算的基礎
第1章  可擴展計算的重要性  3
1.1  Dask的優勢  4
1.2  有向無環圖  9
1.3  橫向擴展、並發和恢復  13
1.3.1  縱向擴展和橫向擴展  14
1.3.2  並發和資源管理  16
1.3.3  從失敗中恢復  17
1.4  本書使用的數據集  18
1.5 本章小結  19
第2章  Dask入門  21
2.1  DataFrame API初探  22
2.1.1  Dask對象的元數據  22
2.1.2  使用compute方法運行計算任務  25
2.1.3  使用persist簡化復雜計算  27
2.2  DAG的可視化  28
2.2.1  使用Dask延遲對象查看DAG  28
2.2.2  帶有循環和集合的復雜DAG的可視化  29
2.2.3  使用persist簡化DAG  32
2.3  任務調度  35
2.3.1  延遲計算  35
2.3.2  數據本地化  36
2.4  本章小結  38
第II部分  使用Dask DataFrame處理結構化數據
第3章  介紹Dask DataFrame  41
3.1  為什麽使用DataFrame  42
3.2  Dask和Pandas  43
3.2.1  管理DataFrame分區  45
3.2.2  “混洗”介紹  48
3.3  Dask DataFrame的局限性  49
3.4  本章小結  50
第4章  將數據讀入DataFrame  53
4.1  從文本文件讀取數據  54
4.1.1  Dask數據類型  59
4.1.2  為Dask DataFrame創建數據模式  61
4.2  從關系數據庫中讀取數據  65
4.3  從HDFS和S3中讀取數據  68
4.4  讀取Parquet格式的數據  72
4.5  本章小結  74
第5章  DataFrame的清理和轉換  75
5.1  使用索引和軸  77
5.1.1  從DataFrame中選擇列  77
5.1.2  從DataFrame中刪除列  79
5.1.3  DataFrame中列的重命名  81
5.1.4  從DataFrame中選擇行  81
5.2  處理缺失值  83
5.2.1  對DataFrame中的缺失值計數  83
5.2.2  刪除含有缺失值
的列  85
5.2.3  填充缺失值  85
5.2.4  刪除缺少數據的行  86
5.2.5  使用缺失值輸入多個列  87
5.3  數據重編碼  89
5.4  元素運算  93
5.5  過濾和重新索引DataFrame  95
5.6  DataFrame的連接  97
5.6.1  連接兩個DataFrame  98
5.6.2  合並兩個DataFrame  101
5.7  將數據寫入文本文件和Parquet文件  103
5.7.1  寫入含分隔符的文本文件  103
5.7.2  寫入Parquet 文件  104
5.8  本章小結  105
第6章  聚合和分析DataFrame  107
6.1  描述性統計信息  108
6.1.1  什麽是描述性統計信息  108
6.1.2  使用Dask計算描述性統計信息  110
6.1.3  使用describe方法進行描述性統計  114
6.2  內置的聚合函數  115
6.2.1  什麽是相關性  115
6.2.2  計算Dask DataFrame的相關性  117
6.3  自定義聚合函數  121
6.3.1  使用t檢驗測試分類變量  121
6.3.2  使用自定義聚合函數來實現Brown-Forsythe檢驗  123
6.4  滾動(窗口)功能  134
6.4.1  為滾動函數準備數據  135
6.4.2  將rolling方法應用到一個窗口函數  136
6.5  本章小結  137
第7章  使用Seaborn對DataFrame進行可視化  139
7.1  prepare-reduce-collect-plot模式  141
7.2  可視化散點圖與規則圖的延伸關系  143
7.2.1  使用Dask和Seaborn創建散點圖  143
7.2.2  在散點圖中添加線性回歸線  146
7.2.3  在散點圖中添加非線性回歸線  147
7.3  使用小提琴圖可視化分類關系  149
7.3.1  使用Dask和Seaborn創建小提琴圖  150
7.3.2  從Dask DataFrame隨機採樣數據  152
7.4  使用熱圖可視化兩個分類關系  154
7.5  本章小結  157
第8章  用Datashader對位置數據可視化  159
8.1  什麽是Datashader?它是如何工作的?  160
8.1.1  Datashader渲染流程的五個階段  161
8.1.2  使用Datashader進行可視化  165
8.2  將位置數據繪制為交互式熱圖  166
8.2.1  準備用於地圖平鋪的地理數據  166
8.2.2  創建交互式熱圖  167
8.3  本章小結  169
第III部分  擴展和部署Dask
第9章  使用Bag和Arrays  173
9.1  使用Bag讀取和解析非結構化數據  175
9.1.1  從Bag中選擇和查看數據  176
9.1.2  常見的解析錯誤和解決辦法  176
9.1.3  使用分隔符  177
9.2  轉換、過濾和合並元素  184
9.2.1  使用map函數轉換元素  184
9.2.2  使用filter函數過濾Bag  186
9.2.3  計算Bag的描述統計量  189
9.2.4  使用foldby方法創建聚合函數  190
9.3  從Bag中創建Arrays和DataFrame  192
9.4  使用Bag和NLTK進行並行文本分析  193
9.4.1  二元分析的基礎  194
9.4.2  提取token和過濾停頓詞  194
9.4.3  分析二元組  198
9.5  本章小結  200
第10章  使用Dask-ML進行機器學習  201
10.1  使用Dask-ML建立線性模型  202
10.1.1  準備二進制向量化數據  204
10.1.2  使用Dask-ML建立Logistic回歸模型  210
10.2  評估和調整Dask-ML模型  211
10.2.1  用計分法評估Dask-ML模型  211
10.2.2  使用Dask-ML構建樸貝葉斯分類器  212
10.2.3  自動調整超參數  213
10.3  持續的Dask-ML模型  215
10.4  本章小結  217
第11章  擴展和部署Dask  219
11.1  使用Docker在Amazon AWS上創建Dask集群  220
11.1.1  入門  221
11.1.2  生成安全密鑰  222
11.1.3  創建ECS集群  224
11.1.4  配置集群的網絡  227
11.1.5  在Elastic文件系統中創建共享數據驅動  231
11.1.6  在Elastic ContainerRepository中為Docker鏡像分配空間  236
11.1.7  為調度器、工作節點和Notebook創建和部署鏡像  237
11.1.8  連接到集群  244
11.2  在集群上運行和監視Dask作業  246
11.3  在AWS上清理Dask集群  250
11.4  本章小結  252
附錄A  軟件的安裝  253




相關書籍

自然語言處理技術——文本信息抽取及應用研究

作者 黃河燕 劉嘯 石戈

2020-06-01

Python網絡爬蟲從入門到實踐

作者 莊培傑

2020-06-01

機器學習工程實戰

作者 [加] 安德烈·布可夫(Andriy Burkov)

2020-06-01