Pandas1.x實例精解 Pandas 1.x Cookbook
Harrison, Matt, Petrou, Theodore 譯 劉鵬
- 出版商: 清華大學
- 出版日期: 2022-06-01
- 定價: $954
- 售價: 8.5 折 $811
- 語言: 簡體中文
- ISBN: 7302609608
- ISBN-13: 9787302609605
- 此書翻譯自: Pandas 1.x Cookbook - Second Edition
-
相關翻譯:
Python 資料分析必備套件!Pandas 資料清理、重塑、過濾、視覺化 (Pandas 1.x Cookbook, 2/e) (繁中版)
下單後立即進貨 (約4週~6週)
商品描述
本書詳細闡述了與Pandas相關的基本解決方案,主要包括Pandas基礎,DataFrame基本操作,創建和保留DataFrame,開始數據分析,探索性數據分析,選擇數據子集,過濾行,對齊索引,分組以進行聚合、過濾和轉換,將數據重組為規整形式,組合Pandas對象,時間序列分析,使用Matplotlib、Pandas和Seaborn進行可視化,調試和測試等內容。此外,本書還提供了相應的示例、代碼,以幫助讀者進一步理解相關方案的實現過程。 本書適合作為高等院校電腦及相關專業的教材和教學參考書,也可作為相關開發人員的自學用書和參考手冊。
目錄大綱
目 錄
第1章 Pandas基礎 1
1.1 導入Pandas 1
1.2 介紹Pandas 1
1.3 關於Pandas DataFrame 2
1.3.1 實戰操作 2
1.3.2 原理解釋 3
1.4 瞭解DataFrame屬性 4
1.4.1 實戰操作 4
1.4.2 原理解釋 5
1.4.3 擴展知識 6
1.5 瞭解數據類型 6
1.5.1 實戰操作 7
1.5.2 原理解釋 8
1.5.3 擴展知識 9
1.6 選擇列 9
1.6.1 實戰操作 10
1.6.2 原理解釋 13
1.6.3 擴展知識 13
1.7 調用Series方法 14
1.7.1 實戰操作 14
1.7.2 原理解釋 19
1.7.3 擴展知識 19
1.8 瞭解Series的操作 20
1.8.1 實戰操作 21
1.8.2 原理解釋 23
1.8.3 擴展知識 23
1.9 使用Series方法鏈 26
1.9.1 實戰操作 26
1.9.2 原理解釋 27
1.9.3 擴展知識 28
1.10 重命名列名 31
1.10.1 實戰操作 31
1.10.2 原理解釋 31
1.10.3 擴展知識 32
1.11 創建和刪除列 34
1.11.1 實戰操作 34
1.11.2 原理解釋 40
1.11.3 擴展知識 40
第2章 DataFrame基本操作 43
2.1 介紹 43
2.2 選擇多個DataFrame列 43
2.2.1 實戰操作 43
2.2.2 原理解釋 44
2.2.3 擴展知識 45
2.3 使用方法選擇列 45
2.3.1 實戰操作 46
2.3.2 原理解釋 48
2.3.3 擴展知識 48
2.4 排序列名稱 49
2.4.1 實戰操作 50
2.4.2 原理解釋 52
2.4.3 擴展知識 52
2.5 統計DataFrame摘要信息 52
2.5.1 實戰操作 53
2.5.2 原理解釋 55
2.5.3 擴展知識 55
2.6 使用DataFrame方法鏈 56
2.6.1 實戰操作 56
2.6.2 原理解釋 57
2.6.3 擴展知識 57
2.7 瞭解DataFrame的操作 58
2.7.1 實戰操作 59
2.7.2 原理解釋 62
2.7.3 擴展知識 63
2.8 比較缺失值 63
2.8.1 做好準備 63
2.8.2 實戰操作 64
2.8.3 原理解釋 66
2.8.4 擴展知識 66
2.9 轉置DataFrame操作的方向 67
2.9.1 實戰操作 67
2.9.2 原理解釋 69
2.9.3 擴展知識 69
2.10 確定大學校園的多樣性 70
2.10.1 實戰操作 70
2.10.2 原理解釋 74
2.10.3 擴展知識 74
第3章 創建和保留DataFrame 77
3.1 介紹 77
3.2 從頭開始創建DataFrame 77
3.2.1 實戰操作 77
3.2.2 原理解釋 78
3.2.3 擴展知識 78
3.3 編寫CSV 80
3.3.1 實戰操作 80
3.3.2 擴展知識 81
3.4 讀取大型CSV文件 82
3.4.1 實戰操作 82
3.4.2 原理解釋 88
3.4.3 擴展知識 89
3.5 使用Excel文件 90
3.5.1 實戰操作 90
3.5.2 原理解釋 91
3.5.3 擴展知識 91
3.6 使用ZIP文件 92
3.6.1 實戰操作 92
3.6.2 原理解釋 95
3.6.3 擴展知識 95
3.7 與數據庫協同工作 95
3.7.1 實戰操作 95
3.7.2 原理解釋 97
3.8 讀取JSON 97
3.8.1 實戰操作 97
3.8.2 原理解釋 100
3.8.3 擴展知識 100
3.9 讀取HTML表格 100
3.9.1 實戰操作 101
3.9.2 原理解釋 105
3.9.3 擴展知識 106
第4章 開始數據分析 107
4.1 介紹 107
4.2 開發數據分析例程 107
4.2.1 實戰操作 108
4.2.2 原理解釋 110
4.2.3 擴展知識 110
4.3 數據字典 111
4.4 通過更改數據類型減少內存使用量 112
4.4.1 實戰操作 112
4.4.2 原理解釋 115
4.4.3 擴展知識 116
4.5 從最大中選擇最小 117
4.5.1 實戰操作 118
4.5.2 原理解釋 119
4.5.3 擴展知識 119
4.6 通過排序選擇每組中的最大值 119
4.6.1 實戰操作 119
4.6.2 原理解釋 121
4.6.3 擴展知識 122
4.7 使用sort_values復制nlargest 123
4.7.1 實戰操作 123
4.7.2 原理解釋 125
4.8 計算追蹤止損單價格 126
4.8.1 實戰操作 126
4.8.2 原理解釋 128
4.8.3 擴展知識 128
第5章 探索性數據分析 129
5.1 介紹 129
5.2 摘要統計 129
5.2.1 實戰操作 130
5.2.2 原理解釋 132
5.2.3 擴展知識 132
5.3 查看列類型 132
5.3.1 實戰操作 132
5.3.2 原理解釋 133
5.3.3 擴展知識 134
5.4 分類數據 137
5.4.1 實戰操作 137
5.4.2 原理解釋 140
5.4.3 擴展知識 141
5.5 連續數據 145
5.5.1 實戰操作 145
5.5.2 原理解釋 148
5.5.3 擴展知識 149
5.6 跨越分類比較連續值 151
5.6.1 實戰操作 151
5.6.2 原理解釋 153
5.6.3 擴展知識 153
5.7 比較兩個連續列 157
5.7.1 實戰操作 157
5.7.2 原理解釋 162
5.7.3 擴展知識 163
5.8 使用分類值比較分類值 165
5.8.1 實戰操作 165
5.8.2 原理解釋 171
5.9 使用Pandas分析庫 171
5.9.1 實戰操作 172
5.9.2 原理解釋 173
第6章 選擇數據子集 175
6.1 介紹 175
6.2 選擇Series數據 175
6.2.1 實戰操作 176
6.2.2 原理解釋 179
6.2.3 擴展知識 180
6.3 選擇DataFrame行 182
6.3.1 實戰操作 182
6.3.2 原理解釋 184
6.3.3 擴展知識 185
6.4 同時選擇DataFrame行和列 185
6.4.1 實戰操作 185
6.4.2 原理解釋 187
6.4.3 擴展知識 188
6.5 使用整數和標簽選擇數據 188
6.5.1 實戰操作 188
6.5.2 原理解釋 189
6.5.3 擴展知識 189
6.6 按字典序切片 190
6.6.1 實戰操作 190
6.6.2 原理解釋 192
6.6.3 擴展知識 192
第7章 過濾行 193
7.1 介紹 193
7.2 計算布爾統計信息 193
7.2.1 實戰操作 194
7.2.2 原理解釋 195
7.2.3 擴展知識 196
7.3 構造多個布爾條件 196
7.3.1 實戰操作 197
7.3.2 原理解釋 197
7.3.3 擴展知識 198
7.4 用布爾數組過濾 199
7.4.1 實戰操作 199
7.4.2 原理解釋 201
7.4.3 擴展知識 202
7.5 比較行過濾和索引過濾 202
7.5.1 實戰操作 203
7.5.2 原理解釋 203
7.5.3 擴展知識 204
7.6 使用唯一索引和排序索引進行選擇 205
7.6.1 實戰操作 205
7.6.2 原理解釋 207
7.6.3 擴展知識 207
7.7 轉換SQL WHERE子句 208
7.7.1 實戰操作 209
7.7.2 原理解釋 210
7.7.3 擴展知識 211
7.8 使用查詢方法提高布爾索引的可讀性 212
7.8.1 實戰操作 212
7.8.2 原理解釋 213
7.8.3 擴展知識 213
7.9 使用.where方法保留Series大小 214
7.9.1 實戰操作 214
7.9.2 原理解釋 218
7.9.3 擴展知識 218
7.10 屏蔽DataFrame行 218
7.10.1 實戰操作 218
7.10.2 原理解釋 220
7.10.3 擴展知識 221
7.11 使用布爾值、整數位置和標簽進行選擇 221
7.11.1 實戰操作 221
7.11.2 原理解釋 224
第8章 對齊索引 225
8.1 介紹 225
8.2 檢查Index對象 225
8.2.1 實戰操作 225
8.2.2 原理解釋 227
8.2.3 擴展知識 227
8.3 生成笛卡兒積 228
8.3.1 實戰操作 228
8.3.2 原理解釋 229
8.3.3 擴展知識 229
8.4 瞭解索引暴增現象 231
8.4.1 實戰操作 231
8.4.2 原理解釋 233
8.4.3 擴展知識 233
8.5 給不相等的索引填充值 234
8.5.1 實戰操作 234
8.5.2 原理解釋 236
8.5.3 擴展知識 237
8.6 添加來自不同DataFrames中的列 239
8.6.1 實戰操作 239
8.6.2 原理解釋 242
8.6.3 擴展知識 242
8.7 突出顯示每列的最大值 244
8.7.1 實戰操作 245
8.7.2 原理解釋 250
8.7.3 擴展知識 251
8.8 使用方法鏈復制.idxmax 252
8.8.1 實戰操作 252
8.8.2 原理解釋 256
8.8.3 擴展知識 257
8.9 查找最常見的列的最大值 258
8.9.1 實戰操作 258
8.9.2 原理解釋 259
8.9.3 擴展知識 259
第9章 分組以進行聚合、過濾和轉換 261
9.1 介紹 261
9.2 定義聚合 262
9.2.1 實戰操作 262
9.2.2 原理解釋 264
9.2.3 擴展知識 265
9.3 使用多個列和函數進行分組和聚合 265
9.3.1 實戰操作 266
9.3.2 原理解釋 268
9.3.3 擴展知識 269
9.4 分組後刪除多重索引 271
9.4.1 實戰操作 271
9.4.2 原理解釋 274
9.4.3 擴展知識 274
9.5 使用自定義聚合函數進行分組 275
9.5.1 實戰操作 275
9.5.2 原理解釋 277
9.5.3 擴展知識 277
9.6 使用*args和**kwargs自定義聚合函數 279
9.6.1 實戰操作 279
9.6.2 原理解釋 281
9.6.3 擴展知識 281
9.7 檢查groupby對象 282
9.7.1 實戰操作 282
9.7.2 原理解釋 285
9.7.3 擴展知識 286
9.8 篩選少數族裔占多數的州 286
9.8.1 實戰操作 287
9.8.2 原理解釋 288
9.8.3 擴展知識 288
9.9 通過減肥賭註做出改變 289
9.9.1 實戰操作 289
9.9.2 原理解釋 294
9.9.3 擴展知識 295
9.10 計算每個州的SAT加權平均成績 296
9.10.1 實戰操作 297
9.10.2 原理解釋 299
9.10.3 擴展知識 300
9.11 按連續變量分組 301
9.11.1 實戰操作 302
9.11.2 原理解釋 303
9.11.3 擴展知識 304
9.12 計算城市之間的航班總數 305
9.12.1 實戰操作 305
9.12.2 原理解釋 308
9.12.3 擴展知識 309
9.13 尋找最長的準點航班連續記錄 310
9.13.1 實戰操作 310
9.13.2 原理解釋 314
9.13.3 擴展知識 316
第10章 將數據重組為規整形式 319
10.1 介紹 319
10.2 使用stack將變量值規整為列名稱 321
10.2.1 實戰操作 322
10.2.2 原理解釋 324
10.2.3 擴展知識 324
10.3 使用melt將變量值規整為列名稱 326
10.3.1 實戰操作 326
10.3.2 原理解釋 327
10.3.3 擴展知識 327
10.4 同時堆疊多組變量 328
10.4.1 實戰操作 329
10.4.2 原理解釋 330
10.4.3 擴展知識 330
10.5 反轉已堆疊的數據 331
10.5.1 實戰操作 332
10.5.2 原理解釋 335
10.5.3 擴展知識 335
10.6 在groupby聚合之後取消堆疊 336
10.6.1 實戰操作 337
10.6.2 原理解釋 338
10.6.3 擴展知識 339
10.7 使用groupby聚合復制 .pivot_table方法的功能 340
10.7.1 實戰操作 340
10.7.2 原理解釋 342
10.7.3 擴展知識 342
10.8 重命名軸的級別以方便數據的重塑 344
10.8.1 實戰操作 344
10.8.2 原理解釋 348
10.8.3 擴展知識 349
10.9 對多個變量存儲為列名稱的情況進行規整 350
10.9.1 實戰操作 350
10.9.2 原理解釋 354
10.9.3 擴展知識 354
10.10 對多個變量存儲為單個列的情況進行規整 356
10.10.1 實戰操作 356
10.10.2 原理解釋 359
10.10.3 擴展知識 360
10.11 對多個值存儲在同一單元格中的情況進行規整 360
10.11.1 實戰操作 361
10.11.2 原理解釋 362
10.11.3 擴展知識 362
10.12 對變量存儲在列名稱和值中的情況進行規整 363
10.12.1 實戰操作 364
10.12.2 原理解釋 365
10.12.3 擴展知識 365
第11章 組合Pandas對象 367
11.1 介紹 367
11.2 將新行追加到DataFrame 367
11.2.1 實戰操作 367
11.2.2 原理解釋 372
11.2.3 擴展知識 372
11.3 將多個DataFrame連接在一起 373
11.3.1 實戰操作 374
11.3.2 原理解釋 376
11.3.3 擴展知識 376
11.4 瞭解concat函數、.join和.merge方法之間的區別 377
11.4.1 實戰操作 378
11.4.2 原理解釋 383
11.4.3 擴展知識 384
11.5 連接到SQL數據庫 385
11.5.1 實戰操作 386
11.5.2 原理解釋 389
11.5.3 擴展知識 390
第12章 時間序列分析 393
12.1 介紹 393
12.2 瞭解Python和Pandas日期工具之間的區別 393
12.2.1 實戰操作 394
12.2.2 原理解釋 398
12.3 智能分割時間序列 399
12.3.1 實戰操作 400
12.3.2 原理解釋 403
12.3.3 擴展知識 404
12.4 用時間數據過濾列 404
12.4.1 實戰操作 404
12.4.2 原理解釋 407
12.4.3 擴展知識 408
12.5 使用僅適用於DatetimeIndex的方法 408
12.5.1 實戰操作 409
12.5.2 原理解釋 414
12.5.3 擴展知識 415
12.6 計算每周犯罪數 415
12.6.1 實戰操作 416
12.6.2 原理解釋 418
12.6.3 擴展知識 418
12.7 分別匯總每周犯罪和交通事故 419
12.7.1 實戰操作 420
12.7.2 原理解釋 422
12.7.3 擴展知識 424
12.8 按星期和年份衡量犯罪情況 425
12.8.1 實戰操作 425
12.8.2 原理解釋 432
12.8.3 擴展知識 434
12.9 使用匿名函數進行分組 435
12.9.1 實戰操作 435
12.9.2 原理解釋 438
12.10 按Timestamp和其他列分組 438
12.10.1 實戰操作 439
12.10.2 原理解釋 442
12.10.3 擴展知識 443
第13章 使用Matplotlib、Pandas和Seaborn進行可視化 445
13.1 介紹 445
13.2 Matplotlib入門 446
13.3 Matplotlib的面向對象指南 447
13.3.1 實戰操作 450
13.3.2 原理解釋 454
13.3.3 擴展知識 458
13.4 使用Matplotlib可視化數據 458
13.4.1 實戰操作 458
13.4.2 原理解釋 462
13.4.3 擴展知識 463
13.5 Pandas繪圖基礎 466
13.5.1 實戰操作 467
13.5.2 原理解釋 469
13.5.3 擴展知識 470
13.6 可視化航班數據集 471
13.6.1 實戰操作 471
13.6.2 原理解釋 482
13.7 使用堆積面積圖發現新興趨勢 484
13.7.1 實戰操作 484
13.7.2 原理解釋 488
13.8 瞭解Seaborn和Pandas之間的區別 489
13.8.1 實戰操作 489
13.8.2 原理解釋 495
13.9 使用Seaborn網格進行多變量分析 496
13.9.1 實戰操作 496
13.9.2 原理解釋 499
13.9.3 擴展知識 500
13.10 使用Seaborn在鑽石數據集中發現辛普森悖論 502
13.10.1 實戰操作 503
13.10.2 原理解釋 507
13.10.3 擴展知識 507
第14章 調試和測試 509
14.1 轉換數據 509
14.1.1 實戰操作 509
14.1.2 原理解釋 513
14.2 測試.apply方法的性能 514
14.2.1 實戰操作 514
14.2.2 原理解釋 515
14.2.3 擴展知識 515
14.3 使用Dask、Pandarell和Swifter等提高 .apply 方法的性能 516
14.3.1 實戰操作 517
14.3.2 原理解釋 518
14.4 檢查代碼 519
14.4.1 實戰操作 520
14.4.2 原理解釋 523
14.4.3 擴展知識 523
14.5 在Jupyter中進行調試 523
14.5.1 實戰操作 524
14.5.2 原理解釋 526
14.5.3 擴展知識 526
14.6 管理數據的完整性 527
14.6.1 實戰操作 527
14.6.2 原理解釋 534
14.7 結合使用pytest和Pandas 535
14.7.1 實戰操作 535
14.7.2 原理解釋 539
14.7.3 擴展知識 539
14.8 使用Hypothesis庫生成測試 540
14.8.1 實戰操作 540
14.8.2 原理解釋 545