Pandas入門與實戰(zhàn)應用 :基于Python的數(shù)據(jù)分析與處理
定 價:89 元
- 作者:周峰
- 出版時間:2022/8/1
- ISBN:9787121440700
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP311.561
- 頁碼:388
- 紙張:
- 版次:01
- 開本:16開
本書首先講解Pandas快速入門的基礎知識,如Pandas的定義、可處理的數(shù)據(jù)類型、優(yōu)勢、開發(fā)環(huán)境配置、常用的數(shù)據(jù)結構等;然后通過實例剖析講解Pandas數(shù)據(jù)的導入、導出、查看、清洗、合并、對比、預處理;接著講解Pandas數(shù)據(jù)的提取、篩選、匯總、統(tǒng)計及可視化;然后講解Pandas數(shù)據(jù)的線性模型和廣義線性模型,最后講解Pandas數(shù)據(jù)實戰(zhàn)分析。在講解過程中即考慮讀者的學習習慣,又通過具體實例剖析講解Pandas實戰(zhàn)應用中的熱點問題、關鍵問題及種種難題。
周峰,畢業(yè)于青島海洋大學計算機科學與應用專業(yè)。曾先后就職于青島商業(yè)中專和青島遠洋學院計算機系,從事計算機輔助設計的教學與研究。曾出版作品如下:《C語言實用程序設計100例》 《VB控件實用程序設計100例》 《計算機立體美術設計3ds max實例教程》《Flash MX 2004網(wǎng)絡動畫精彩實例創(chuàng)作通》
第1章 Pandas快速入門 1
1.1 初識Pandas 2
1.1.1 什么是Pandas 2
1.1.2 Pandas的主要數(shù)據(jù)結構 2
1.1.3 Pandas的優(yōu)勢 2
1.2 Pandas開發(fā)環(huán)境配置 3
1.2.1 Python概述 3
1.2.2 Anaconda概述 5
1.2.3 Anaconda的下載 5
1.2.4 Anaconda的安裝 8
1.2.5 Jupyter Notebook概述 11
1.3 Jupyter Notebook界面的基本操作 13
1.3.1 Jupyter Notebook的主界面 13
1.3.2 Jupyter Notebook的編輯頁面 14
1.3.3 Jupyter Notebook的文件操作 18
1.4 實例:第一個Pandas數(shù)據(jù)處理程序 20
第2章 Pandas常用的數(shù)據(jù)結構 22
2.1 初識數(shù)據(jù)結構 23
2.1.1 什么是數(shù)據(jù)及數(shù)據(jù)處理 23
2.1.2 什么是信息 23
2.1.3 什么是數(shù)據(jù)結構 24
2.2 Python的數(shù)據(jù)結構 24
2.2.1 數(shù)值型應用實例 24
2.2.2 字符串型應用實例 27
2.2.3 列表應用實例 30
2.2.4 元組應用實例 34
2.2.5 字典應用實例 36
2.2.6 集合應用實例 38
2.3 NumPy的數(shù)據(jù)結構 40
2.3.1 NumPy數(shù)組的創(chuàng)建 41
2.3.2 NumPy特殊數(shù)組 42
2.3.3 NumPy序列數(shù)組 43
2.3.4 NumPy數(shù)組運算 44
2.3.5 NumPy的矩陣 45
2.3.6 兩個數(shù)組的點積 46
2.3.7 兩個向量的點積 47
2.3.8 數(shù)組的向量內(nèi)積 48
2.3.9 矩陣的行列式 49
2.3.10 矩陣的逆 50
2.4 Pandas的數(shù)據(jù)結構 51
2.4.1 一維數(shù)組系列應用實例 52
2.4.2 二維數(shù)組應用實例 53
第3章 Pandas數(shù)據(jù)的導入與導出 55
3.1 導入CSV文件 56
3.1.1 CSV文件概述 56
3.1.2 創(chuàng)建CSV文件,并輸入內(nèi)容 56
3.1.3 read_csv()方法 58
3.1.4 利用read_csv()方法導入CSV文件實例 60
3.2 導入Excel文件 63
3.2.1 在Excel中輸入內(nèi)容并上傳 63
3.2.2 read_excel()方法 65
3.2.3 利用read_excel()方法導入Excel文件實例 66
3.3 導入JSON文件 68
3.3.1 創(chuàng)建JSON文件,并輸入內(nèi)容 68
3.3.2 read_json()方法 69
3.3.3 利用read_json()方法導入JSON文件實例 70
3.4 Pandas數(shù)據(jù)的輸出 70
3.4.1 輸出CSV文件 71
3.4.2 輸出Excel文件 73
3.4.3 輸出JSON文件 76
第4章 Pandas數(shù)據(jù)表的查看和清洗 79
4.1 Pandas數(shù)據(jù)表信息的查看 80
4.1.1 利用shape屬性查看數(shù)據(jù)表的維度 80
4.1.2 利用dtype和dtypes屬性查看列數(shù)據(jù)的類型 82
4.1.3 利用columns和values屬性查看表頭和數(shù)據(jù)表數(shù)據(jù)信息 84
4.1.4 利用isnull()方法查看空值信息 85
4.1.5 利用unique()方法查看列中的無重復數(shù)據(jù)信息 87
4.1.6 利用info()方法查看數(shù)據(jù)表的基本信息 88
4.1.7 利用head()方法查看數(shù)據(jù)表前幾行數(shù)據(jù) 89
4.1.8 利用tail()方法查看數(shù)據(jù)表后幾行數(shù)據(jù) 91
4.2 Pandas數(shù)據(jù)表的清洗 92
4.2.1 空值的清洗 92
4.2.2 格式錯誤數(shù)據(jù)的清洗 97
4.2.3 錯誤數(shù)據(jù)的清洗 98
4.2.4 重復數(shù)據(jù)的清洗 101
4.2.5 數(shù)據(jù)表列名的清洗 103
4.2.6 數(shù)據(jù)內(nèi)容的清洗 105
第5章 Pandas數(shù)據(jù)的合并與對比 108
5.1 利用append()方法追加數(shù)據(jù) 109
5.1.1 append()方法及參數(shù) 109
5.1.2 利用append()方法實現(xiàn)相同結構數(shù)據(jù)表的數(shù)據(jù)追加 109
5.1.3 利用append()方法實現(xiàn)不同結構數(shù)據(jù)表的數(shù)據(jù)追加 111
5.1.4 利用append()方法實現(xiàn)忽略索引的數(shù)據(jù)追加 113
5.1.5 追加Series序列 115
5.1.6 追加字典列表 117
5.2 利用concat()方法合并數(shù)據(jù) 118
5.2.1 concat()方法及參數(shù) 118
5.2.2 利用concat()方法縱向合并數(shù)據(jù) 119
5.2.3 利用concat()方法橫向合并數(shù)據(jù) 120
5.2.4 合并數(shù)據(jù)的交集 122
5.3 利用merge()方法合并數(shù)據(jù) 125
5.3.1 merge()方法及參數(shù) 125
5.3.2 利用merge()方法合并數(shù)據(jù)實例 126
5.4 利用compare()方法對比數(shù)據(jù) 130
5.4.1 compare()方法及參數(shù) 130
5.4.2 利用compare()方法對比數(shù)據(jù)實例 131
第6章 Pandas數(shù)據(jù)的預處理 135
6.1 設置索引列 135
6.1.1 Pandas索引的作用 136
6.1.2 set_index()方法及參數(shù) 136
6.1.3 利用set_index()方法設置索引列實例 137
6.1.4 利用reset_index()方法還原索引列實例 139
6.2 排序 141
6.2.1 按索引列排序 141
6.2.2 按指定列排序 144
6.3 分組標記 146
6.3.1 利用where()方法添加分組標記 146
6.3.2 根據(jù)多個條件進行分組標記 148
6.4 列的拆分 151
第7章 Pandas數(shù)據(jù)的提取 155
7.1 利用loc[ ]提取數(shù)據(jù) 155
7.1.1 利用loc[ ]提取整行數(shù)據(jù) 156
7.1.2 利用loc[ ]提取整列數(shù)據(jù) 158
7.1.3 利用loc[ ]提取具體數(shù)據(jù) 161
7.2 利用iloc[ ]提取數(shù)據(jù) 164
7.2.1 利用iloc[ ]提取整行數(shù)據(jù) 165
7.2.2 利用iloc[ ]提取整列數(shù)據(jù) 167
7.2.3 利用iloc[ ]提取具體數(shù)據(jù) 168
7.3 利用屬性提取數(shù)據(jù) 170
7.4 利用For循環(huán)提取數(shù)據(jù) 172
第8章 Pandas數(shù)據(jù)的篩選 175
8.1 Pandas數(shù)據(jù)關系篩選 176
8.1.1 等于關系數(shù)據(jù)篩選實例 176
8.1.2 不等于關系數(shù)據(jù)篩選實例 178
8.1.3 大于和大于等于關系數(shù)據(jù)篩選實例 180
8.1.4 小于和小于等于關系數(shù)據(jù)篩選實例 182
8.2 Pandas數(shù)據(jù)邏輯篩選 183
8.2.1 使用“與”進行數(shù)據(jù)篩選實例 183
8.2.2 使用“或”進行數(shù)據(jù)篩選實例 185
8.2.3 使用“非”進行數(shù)據(jù)篩選實例 186
8.3 使用query()方法進行數(shù)據(jù)篩選實例 188
8.4 使用filter()方法進行數(shù)據(jù)篩選 192
8.4.1 filter()方法及意義 193
8.4.2 使用filter()方法進行數(shù)據(jù)篩選實例 193
第9章 Pandas數(shù)據(jù)的聚合函數(shù) 197
9.1 sum()函數(shù)的應用 197
9.1.1 sum()函數(shù)及參數(shù) 198
9.1.2 sum()函數(shù)應用實例 198
9.2 mean()函數(shù)的應用 202
9.2.1 mean()函數(shù)及參數(shù) 203
9.2.2 mean()函數(shù)應用實例 203
9.3 max()函數(shù)的應用 207
9.3.1 max()函數(shù)及參數(shù) 207
9.3.2 max()函數(shù)應用實例 207
9.4 min()函數(shù)的應用 210
9.4.1 min()函數(shù)及參數(shù) 210
9.4.2 min()函數(shù)應用實例 211
9.5 count()函數(shù)的應用 213
9.5.1 count()函數(shù)及參數(shù) 214
9.5.2 count()函數(shù)應用實例 214
第10章 Pandas數(shù)據(jù)的分組與透視 217
10.1 Pandas數(shù)據(jù)的分組 218
10.1.1 groupby()方法及參數(shù) 218
10.1.2 groupby()方法的應用 218
10.1.3 agg()方法的應用 223
10.1.4 transform()方法的應用 226
10.2 Pandas數(shù)據(jù)的透視 230
10.2.1 pivot_table()方法及參數(shù) 230
10.2.2 利用pivot_table()方法透視數(shù)據(jù)實例 231
10.2.3 crosstab()方法及參數(shù) 235
10.2.4 利用crosstab()方法透視數(shù)據(jù)實例 236
第11章 Pandas數(shù)據(jù)的統(tǒng)計 243
11.1 數(shù)據(jù)采樣 243
11.1.1 sample()方法及參數(shù) 244
11.1.2 利用sample()方法進行數(shù)據(jù)采樣實例 244
11.2 數(shù)據(jù)統(tǒng)計 249
11.2.1 數(shù)據(jù)表描述性統(tǒng)計 249
11.2.2 利用describe()方法進行數(shù)據(jù)表描述性統(tǒng)計實例 250
11.2.3 中位數(shù)的應用 255
11.2.4 方差的應用 260
11.2.5 標準差的應用 263
11.3 數(shù)據(jù)相關性分析 267
11.3.1 協(xié)方差的應用 267
11.3.2 協(xié)方差相關系數(shù)的應用 270
第12章 Pandas數(shù)據(jù)的可視化 275
12.1 利用Pandas中的plot()方法繪圖 276
12.1.1 plot()方法及參數(shù) 276
12.1.2 繪制折線圖實例 277
12.1.3 繪制條形圖實例 279
12.1.4 利用plot()方法繪制其他類型圖形實例 283
12.2 利用Matplotlib包繪制Pandas數(shù)據(jù)圖形 287
12.2.1 figure()方法的應用實例 288
12.2.2 plot()方法的應用實例 290
12.2.3 subplot()方法的應用實例 294
12.2.4 add_axes()方法的應用實例 296
12.2.5 legend()方法的應用實例 298
12.2.6 設置線條的寬度和顏色實例 300
12.2.7 添加坐標軸網(wǎng)格線實例 302
第13章 Pandas數(shù)據(jù)的機器學習算法 303
13.1 機器學習概述 304
13.1.1 什么是機器學習 304
13.1.2 機器學習的類型 304
13.2 常見的機器學習算法 305
13.3 機器學習的sklearn包 307
13.3.1 sklearn包中的數(shù)據(jù)集 308
13.3.2 iris數(shù)據(jù)集 308
13.3.3 查看iris數(shù)據(jù)集實例 309
13.4 決策樹 314
13.4.1 決策樹的組成 315
13.4.2 決策樹的優(yōu)點 315
13.4.3 決策樹的缺點 316
13.4.4 決策樹實現(xiàn)實例 316
13.5 隨機森林 318
13.5.1 隨機森林的構建 318
13.5.2 隨機森林的優(yōu)缺點 318
13.5.3 隨機森林的應用范圍 319
13.5.4 隨機森林實現(xiàn)實例 319
13.6 支持向量機 321
13.6.1 支持向量機的工作原理 321
13.6.2 核函數(shù) 322
13.6.3 支持向量機的優(yōu)點 324
13.6.4 支持向量機的缺點 324
13.6.5 支持向量機實現(xiàn)實例 325
13.7 樸素貝葉斯算法 328
13.7.1 樸素貝葉斯算法的思想 329
13.7.2 樸素貝葉斯算法的步驟 329
13.7.3 樸素貝葉斯算法的優(yōu)缺點 330
13.7.4 高斯樸素貝葉斯模型實現(xiàn)實例 330
13.7.5 多項式分布樸素貝葉斯模型實現(xiàn)實例 333
13.7.6 伯努力樸素貝葉斯模型實現(xiàn)實例 336
第14章 Pandas的時間序列數(shù)據(jù) 338
14.1 Pandas時間序列的創(chuàng)建 339
14.1.1 date_range()方法及參數(shù) 339
14.1.2 利用date_range()方法創(chuàng)建時間序列實例 340
14.1.3 時間戳對象 341
14.2 時間類型與字符串類型的轉換 343
14.3 時間序列數(shù)據(jù)的操作技巧 345
14.3.1 時間序列數(shù)據(jù)的提取 345
14.3.2 時間序列數(shù)據(jù)的篩選 349
14.3.3 時間序列數(shù)據(jù)的重采樣 352
14.3.4 時間序列數(shù)據(jù)的滑動窗口 355
14.4 時間序列數(shù)據(jù)的預測 359
14.4.1 時間序列數(shù)據(jù)的準備 359
14.4.2 時間序列數(shù)據(jù)的樸素預測法 362
14.4.3 時間序列數(shù)據(jù)的簡單平均預測法 363
14.4.4 時間序列數(shù)據(jù)的移動平均預測法 365
14.4.5 時間序列數(shù)據(jù)的簡單指數(shù)平滑預測法 367
14.4.6 時間序列數(shù)據(jù)的霍爾特線性趨勢預測法 369
14.4.7 時間序列數(shù)據(jù)的Holt-Winters季節(jié)性預測法 371
14.4.8 時間序列數(shù)據(jù)的自回歸移動平均預測法 373