Python數據分析從入門到精通(第2版)

Python數據分析從入門到精通(第2版)

《Python數據分析從入門到精通(第2版)》是2023年清華大學出版社出版的圖書,作者是明日科技。

基本介紹

  • 中文名:Python數據分析從入門到精通(第2版)
  • 作者:明日科技
  • 出版時間:2023年11月1日
  • 出版社:清華大學出版社
  • ISBN:9787302646785 
  • 定價:89.80 元
內容簡介,圖書目錄,

內容簡介

《Python數據分析從入門到精通(第2版)》從數據分析初學者角度出發,以通俗易懂的語言、豐富多彩的實例,詳細介紹了使用Python進行數據分析程式開發應掌握的各方面技術。全書共分21章,包括數據分析基礎、搭建數據分析開發環境、NumPy模組之數組計算、Pandas模組基礎、Pandas模組之數據的讀取、Pandas模組之數據的處理、Pandas模組之數據的清洗、數據的計算與格式化、數據統計及透視表、處理日期與時間、Scikit-Learn機器學習模組、Matplotlib模組入門、Matplotlib模組進階、Seaborn圖表、Plotly圖表、Bokeh圖表、Pyecharts圖表等內容,以及4個項目實戰綜合案例。書中所有知識結合具體實例進行介紹,涉及的程式代碼給出了詳細的注釋,讀者可輕鬆領會Python數據分析程式開發的精髓,從而快速提升數據分析開發技能。

圖書目錄

第1篇 基礎知識
第1章 數據分析基礎 2
視頻講解:27分鐘
1.1 數據分析概述 2
1.2 常見數據分析方法 3
1.2.1 對比分析法 3
1.2.2 同比分析法 4
1.2.3 環比分析法 4
1.2.4 回歸分析法 5
1.2.5 聚類分析法 6
1.3 了解數據分析工具 6
1.4 數據分析的基本流程 7
1.4.1 確認目標 7
1.4.2 獲取數據 8
1.4.3 處理數據 9
1.4.4 分析數據 10
1.4.5 驗證結果 10
1.4.6 展示數據 10
1.4.7 套用數據 11
1.5 數據分析常用模組庫 11
1.6 小結 12
第2章 搭建數據分析開發環境 13
視頻講解:19分鐘
2.1 強大的程式語言Python 13
2.1.1 Python概述 13
2.1.2 安裝Python 13
2.1.3 創建第一個Python程式 17
2.2 安裝Anaconda開發環境 18
2.3 Jupyter Notebook開發工具 23
2.3.1 初識Jupyter Notebook 23
2.3.2 創建Jupyter Notebook檔案 24
2.3.3 測試Jupyter Notebook 24
2.4 PyCharm集成開發環境 26
2.4.1 PyCharm的下載與安裝 26
2.4.2 配置PyCharm 29
2.4.3 測試PyCharm 30
2.5 小結 32
第3章 NumPy模組之數組計算 33
視頻講解:265分鐘
3.1 NumPy模組概述 33
3.1.1 什麼是NumPy模組 33
3.1.2 安裝NumPy模組 34
3.1.3 NumPy的數據類型 35
3.1.4 ndarray()數組對象 36
3.1.5 dtype數據類型對象 37
3.2 創建數組 37
3.2.1 創建簡單的數組 38
3.2.2 多種創建數組的方式 39
3.2.3 根據數值範圍創建數組 41
3.2.4 生成隨機數組 43
3.2.5 在已有的數組中創建數組 45
3.3 數組的基本操作 49
3.3.1 數組的多種運算方式 49
3.3.2 數組的索引和切片 51
3.3.3 數組的重塑 55
3.3.4 數組的增、刪、改、查 57
3.4 矩陣的基本操作 59
3.4.1 創建矩陣 60
3.4.2 矩陣的運算 62
3.4.3 矩陣的轉換 64
3.5 NumPy常用的數學運算函式 65
3.5.1 算術函式 66
3.5.2 捨入函式 67
3.5.3 三角函式 68
3.6 統計分析 69
3.6.1 求和函式sum() 70
3.6.2 平均值函式mean() 70
3.6.3 最大值與最小值函式max()、min() 71
3.6.4 中位數函式median() 71
3.6.5 加權平均函式average() 72
3.6.6 方差與標準差函式var()、std() 73
3.7 數組排序 73
3.7.1 sort()函式 73
3.7.2 argsort()函式 74
3.7.3 lexsort()函式 74
3.8 小結 75
第4章 Pandas模組基礎 76
視頻講解:67分鐘
4.1 安裝Pandas模組 76
4.2 了解Pandas模組 78
4.3 Pandas模組的兩大數據結構 79
4.3.1 Series()對象 79
4.3.2 DataFrame()對象 80
4.4 數據中的索引 82
4.4.1 什麼是索引 82
4.4.2 Series()對象的索引 83
4.4.3 DataFrame()對象的索引 86
4.5 小結 88
第5章 Pandas模組之數據的讀取 89
視頻講解:75分鐘
5.1 讀取文本檔案中的數據 89
5.2 Excel檔案的讀取和寫入 90
5.2.1 讀取Excel檔案中的數據 90
5.2.2 讀取指定Sheet頁中的數據 93
5.2.3 通過行列索引讀取指定數據 93
5.2.4 將數據寫入Excel檔案中 95
5.3 CSV檔案的讀取和寫入 96
5.3.1 讀取CSV檔案中的數據 96
5.3.2 將數據寫入CSV檔案中 98
5.4 讀取HTML網頁 99
5.5 讀取資料庫中的數據 101
5.5.1 讀取MySQL資料庫中的數據 101
5.5.2 讀取MongoDB資料庫中的數據 104
5.6 小結 108
第6章 Pandas模組之數據的處理 109
視頻講解:96分鐘
6.1 數據抽取 109
6.1.1 抽取指定行數據 110
6.1.2 抽取多行數據 110
6.1.3 抽取指定列數據 111
6.1.4 抽取指定的行、列數據 112
6.2 數據的增、刪、改、查 113
6.2.1 增加數據 113
6.2.2 按行增加數據 114
6.2.3 刪除數據 115
6.2.4 修改數據 116
6.2.5 查詢數據 117
6.3 數據的排序和排名 120
6.3.1 數據的排序 120
6.3.2 數據排名 123
6.4 小結 125
第7章 Pandas模組之數據的清洗 126
視頻講解:81分鐘
7.1 缺失值的處理 126
7.1.1 了解數據中的缺失值 126
7.1.2 查看缺失值 127
7.1.3 處理缺失值 128
7.2 處理數據中的重複值 129
7.3 數據中異常值的檢測與處理 130
7.4 數據中字元串的操作函式 131
7.4.1 字元串對象中的常見函式 131
7.4.2 替換字元串——replace()函式 133
7.4.3 數據切分——split()函式 134
7.4.4 判斷字元串——contains()函式 135
7.5 數據轉換 136
7.5.1 通過字典映射的方式實現數據轉換——map()函式 136
7.5.2 數據分割——cut()函式 137
7.5.3 數據分類——get_dummies()函式 138
7.6 小結 139
第8章 數據的計算與格式化 140
視頻講解:54分鐘
8.1 常見的數據計算函式 140
8.1.1 求和——sum()函式 140
8.1.2 求平均值——mean()函式 141
8.1.3 求最大值——max()函式 142
8.1.4 求最小值——min()函式 143
8.2 高級的數據計算函式 144
8.2.1 求取中位數——median()函式 144
8.2.2 求取眾數——mode()函式 145
8.2.3 計算方差——var()函式 146
8.2.4 計算標準差——std()函式 147
8.2.5 計算分位數——quantile()函式 147
8.3 數據格式化 148
8.3.1 設定小數位數 149
8.3.2 設定百分比 150
8.3.3 設定千位分隔設定 151
8.4 小結 151
第9章 數據統計及透視表 152
視頻講解:71分鐘
9.1 數據的分組統計 152
9.1.1 分組統計——groupby()函式 152
9.1.2 分組數據的疊代 154
9.1.3 分組聚合運算——agg()函式 155
9.1.4 通過字典和Series()對象進行分組統計 156
9.2 數據移位 157
9.3 數據合併 158
9.3.1 數據合併——merge()函式 158
9.3.2 數據合併——concat()函式 162
9.3.3 最近合併——merge_asof()函式 163
9.4 數據透視表 165
9.4.1 pivot()函式 165
9.4.2 pivot_table()函式 166
9.5 小結 167
第10章 處理日期與時間 168
視頻講解:94分鐘
10.1 日期數據的處理 168
10.1.1 日期數據的轉換 168
10.1.2 dt()對象 170
10.1.3 獲取指定日期區間的數據 171
10.1.4 按不同時期統計數據 172
10.2 日期範圍、頻率和移位 174
10.2.1 生成日期範圍——date_range()函式 174
10.2.2 日期頻率轉換——asfreq()函式 176
10.2.3 日期移位——shift()函式 177
10.3 時間區間與頻率轉換 179
10.3.1 創建時間區間 179
10.3.2 區間頻率轉換 180
10.4 重新採樣與頻率轉換 181
10.4.1 重新採樣——resample()函式 181
10.4.2 降採樣處理 182
10.4.3 升採樣處理 183
10.5 移動視窗函式 184
10.5.1 將時間序列的數據匯總——ohlc()函式 184
10.5.2 移動視窗數據計算——rolling()函式 185
10.6 小結 187
第11章 Scikit-Learn機器學習模組 188
視頻講解:54分鐘
11.1 Scikit-Learn概述 188
11.2 安裝Scikit-Learn模組 189
11.3 線性模型 190
11.3.1 最小二乘法回歸——LinearRegression對象 190
11.3.2 嶺回歸——Ridge對象 191
11.4 支持向量機 192
11.5 聚類 194
11.5.1 什麼是聚類 194
11.5.2 聚類算法 195
11.5.3 聚類模組 195
11.5.4 聚類數據生成器 197
11.6 小結 198
第2篇 可視化圖表
第12章 Matplotlib模組入門 200
視頻講解:162分鐘
12.1 Matplotlib模組概述 200
12.1.1 了解Matplotlib模組 200
12.1.2 Matplotlib模組的安裝 203
12.1.3 體驗Matplotlib可視化圖表 204
12.2 圖表的基本設定 205
12.2.1 基本繪圖——plot()函式 205
12.2.2 設定畫布——figure()函式 207
12.2.3 設定坐標軸——xlabel()、ylabel()函式 208
12.2.4 設定文本標籤——text()函式 211
12.2.5 設定標題和圖例——title()、legend()函式 212
12.2.6 添加注釋——annotate()函式 215
12.2.7 設定格線線——grid()函式 217
12.2.8 設定參考線——axhline()、axvline()函式 218
12.2.9 選取範圍——axhspan()、axvspan()函式 219
12.2.10 圖表的布局——tight_layout()函式 220
12.2.11 保存圖表——savefig()函式 221
12.3 繪製常用的圖表 221
12.3.1 繪製散點圖——plot()、scatter()函式 221
12.3.2 繪製折線圖——plot()函式 223
12.3.3 繪製柱形圖——bar()函式 224
12.3.4 繪製直方圖——hist()函式 226
12.3.5 繪製餅形圖——pie()函式 228
12.3.6 繪製面積圖——stackplot()函式 231
12.3.7 繪製箱形圖——boxplot()函式 233
12.3.8 繪製熱力圖——imshow()函式 236
12.3.9 繪製雷達圖——polar()函式 237
12.3.10 繪製氣泡圖——scatter()函式 239
12.3.11 繪製棉棒圖——stem()函式 239
12.3.12 繪製誤差棒圖——errorbar()函式 240
12.4 小結 241
第13章 Matplotlib模組進階 242
視頻講解:69分鐘
13.1 圖表的顏色設定 242
13.1.1 常用顏色 242
13.1.2 可識別的顏色格式 243
13.1.3 顏色映射 244
13.2 處理日期與時間 245
13.2.1 dates子模組 245
13.2.2 設定坐標軸日期的顯示格式 246
13.2.3 設定坐標軸日期刻度標籤 247
13.3 次坐標軸(雙坐標軸) 248
13.3.1 共享x坐標軸——twinx()函式 248
13.3.2 共享y坐標軸——twiny()函式 249
13.4 繪製多個子圖表 250
13.4.1 subplot()函式 250
13.4.2 subplots()函式 252
13.4.3 add_subplot()函式 253
13.4.4 子圖表共用一個坐標軸 254
13.5 繪製函式圖像 255
13.5.1 一元一次函式圖像 255
13.5.2 一元二次函式圖像 256
13.5.3 正弦函式圖像——sin()函式 256
13.5.4 餘弦函式圖像——cos()函式 257
13.5.5 S型生長曲線——Sigmoid()函式 257
13.6 形狀與路徑 258
13.6.1 繪製形狀——patches子模組 258
13.6.2 繪製路徑——path子模組 259
13.6.3 繪製圓——Circle()對象 261
13.6.4 繪製矩形——Rectangle()對象 262
13.7 繪製3D圖表 263
13.8 小結 264
第14章 Seaborn圖表 265
視頻講解:50分鐘
14.1 了解Seaborn圖表 265
14.1.1 Seaborn概述 265
14.1.2 安裝Seaborn模組 266
14.1.3 體驗Seaborn圖表 267
14.2 Seaborn圖表的基本設定 267
14.2.1 設定背景風格 267
14.2.2 控制框線的顯示方式 268
14.3 繪製常見圖表 268
14.3.1 繪製散點圖——replot()函式 268
14.3.2 繪製折線圖——relplot()、lineplot()函式 269
14.3.3 繪製直方圖——displot()函式 271
14.3.4 繪製條形圖——barplot()函式 271
14.3.5 繪製線性回歸模型——lmplot()函式 272
14.3.6 繪製箱形圖——boxplot()函式 273
14.3.7 繪製核密度圖——kdeplot()函式 274
14.3.8 繪製提琴圖——violinplot()函式 275
14.4 小結 275
第15章 Plotly圖表 276
視頻講解:57分鐘
15.1 了解Plotly圖表 276
15.1.1 安裝Plotly模組 276
15.1.2 Plotly繪圖原理及流程 277
15.1.3 Plotly圖表的生成方法 278
15.2 繪製基礎圖表 280
15.2.1 繪製散點圖與折線圖——Scatter()對象 280
15.2.2 繪製柱形圖與水平條形圖——Bar()對象 281
15.2.3 繪製餅圖與環形圖——Pie()對象 283
15.3 設定圖表 285
15.3.1 圖層布局——Layout()對象 285
15.3.2 設定圖表標題 286
15.3.3 設定文本標記 286
15.3.4 設定注釋文本 287
15.4 統計圖表 290
15.4.1 繪製直方圖 290
15.4.2 繪製箱形圖 291
15.4.3 繪製熱力圖 292
15.4.4 繪製等高線圖 293
15.5 繪製子圖表 294
15.5.1 繪製基本的子圖表 294
15.5.2 自定義子圖位置 295
15.5.3 子圖可供選擇的圖形類型 296
15.6 三維圖繪製 296
15.7 繪製表格 297
15.7.1 Table()對象 297
15.7.2 create_table()函式 299
15.8 小結 301
第16章 Bokeh圖表 302
視頻講解:51分鐘
16.1 了解Bokeh圖表 302
16.1.1 安裝Bokeh模組 302
16.1.2 辭彙與接口說明 302
16.1.3 繪製第一張Bokeh圖表 303
16.1.4 通過數據類型繪製圖表 305
16.2 繪製常見圖表 309
16.2.1 繪製散點圖——circle()函式 309
16.2.2 繪製組合圖表——line()、circle()函式 310
16.2.3 繪製條形圖——vbar()函式 311
16.2.4 繪製餅(環)形圖——wedge()、annular_wedge()函式 312
16.3 設定圖表 313
16.3.1 圖表布局——column()、row()、gridplot()函式 313
16.3.2 配置繪圖工具 315
16.3.3 設定視覺屬性 317
16.3.4 圖表注釋 319
16.4 圖表可視化互動 323
16.4.1 微調器 323
16.4.2 選項卡 324
16.4.3 滑塊功能 325
16.5 小結 326
第17章 Pyecharts圖表 327
視頻講解:52分鐘
17.1 了解Pyecharts圖表 327
17.1.1 Pyecharts概述 327
17.1.2 安裝Pyecharts模組 328
17.1.3 繪製第一張Pyecharts圖表 329
17.1.4 Pyecharts函式的鏈式調用 329
17.2 Pyecharts圖表的組成部分 330
17.2.1 主題風格——InitOpts()對象 331
17.2.2 圖表標題——TitleOpts()對象 332
17.2.3 圖例——LegendOpts()對象 334
17.2.4 提示框——TooltipOpts()對象 336
17.2.5 視覺映射——VisualMapOpts()對象 337
17.2.6 工具箱——ToolboxOpts()對象 339
17.2.7 區域縮放——DataZoomOpts()對象 341
17.3 繪製Pyecharts圖表 342
17.3.1 繪製散點圖——EffectScatter()對象 342
17.3.2 繪製折線圖和面積圖——Line()對象 343
17.3.3 繪製柱形圖——Bar()對象 345
17.3.4 繪製餅形圖——Pie()對象 346
17.3.5 繪製箱形圖——Boxplot()對象 348
17.3.6 繪製詞雲圖——WordCloud對象 349
17.3.7 繪製熱力圖——HeatMap()對象 350
17.3.8 繪製水球圖——Liquid()對象 352
17.3.9 繪製日曆圖——Calendar()對象 352
17.4 小結 353
第3篇 項目實戰
第18章 綜合案例:股票數據分析 356
視頻講解:44分鐘
18.1 概述 356
18.2 案例效果預覽 356
18.3 案例環境 358
18.4 前期準備 359
18.4.1 安裝第三方模組 359
18.4.2 新建Jupyter Notebook檔案 359
18.4.3 導入必要的模組 361
18.4.4 獲取股票歷史數據 361
18.5 數據預處理 362
18.5.1 數據查看與缺失性分析 362
18.5.2 描述性統計分析 363
18.5.3 數據處理 364
18.5.4 異常值分析 364
18.5.5 數據歸一化處理 365
18.6 數據統計分析 365
18.6.1 可視化股票走勢圖 365
18.6.2 股票收盤價格走勢圖 366
18.6.3 股票成交量時間序列圖 367
18.6.4 股票漲跌情況分析圖 367
18.6.5 股票k線走勢圖 368
第19章 綜合案例:淘寶網訂單分析 370
視頻講解:5分鐘
19.1 概述 370
19.2 案例效果預覽 371
19.3 案例環境 372
19.4 數據集介紹 372
19.5 前期準備 373
19.5.1 安裝第三方模組 373
19.5.2 新建Jupyter Notebook檔案 373
19.5.3 導入必要的模組 373
19.5.4 數據讀取與查看 374
19.6 數據預處理 375
19.6.1 缺失性分析 375
19.6.2 描述性統計分析 375
19.6.3 數據處理 376
19.7 數據統計分析 377
19.7.1 整體情況分析 377
19.7.2 按訂單類型分析訂單量 377
19.7.3 按區域分析訂單量 378
19.7.4 每日訂單量分析 380
19.7.5 小時訂單量分析 380
第20章 綜合案例:網站用戶數據分析 382
視頻講解:32分鐘
20.1 概述 382
20.2 案例效果預覽 382
20.3 案例環境 383
20.4 MySQL數據 383
20.4.1 導入MySQL數據 383
20.4.2 Python連線MySQL資料庫 384
20.5 實現過程 385
20.5.1 數據準備 385
20.5.2 數據檢測 385
20.5.3 年度註冊用戶分析 385
20.5.4 新註冊用戶分析 387
第21章 綜合案例:NBA球員薪資的數據分析 389
視頻講解:4分鐘
21.1 概述 389
21.2 案例效果預覽 389
21.3 案例環境 391
21.4 實現過程 391
21.4.1 數據準備 391
21.4.2 確定網頁格式 392
21.4.3 Pandas爬取數據並保存 393
21.4.4 數據清洗 394
21.4.5 水平柱形圖分析湖人隊薪資狀況 394
21.4.6 統計分析各個球隊隊員薪資總和 395
21.4.7 統計分析多個球隊所有球員的薪資狀況 397
21.4.8 分析不同位置球員的薪資狀況 398

相關詞條

熱門詞條

聯絡我們