Python科學計算和數據分析(第3版) 使用NumPy、SciPy和Matplotlib等
[美] 羅伯特·約翰遜(Robert Johansson)著 林潤 譯
- 出版商: 清華大學
- 出版日期: 2026-08-01
- 售價: $834
- 語言: 簡體中文
- ISBN: 7302724644
- ISBN-13: 9787302724643
-
相關分類:
Python、Data-visualization、Machine Learning
- 此書翻譯自: Numerical Python: Scientific Computing and Data Science Applications with Numpy, Scipy and Matplotlib, 3/e (Paperback)
下單後立即進貨 (約4週~6週)
買這商品的人也買了...
相關主題
商品描述
閱讀《Python科學計算和數據分析(第3版) 使用NumPy、SciPy和Matplotlib等》,讀者能夠具備 Python 科學計算與數據分析的完整能力,熟練使用 Python 標準庫,以及 NumPy、SymPy、SciPy、Matplotlib 等主流開源數值計算工具包。本書結合數值計算、符號計算與數據可視化三大核心技術,系統講解數學建模方法,梳理問題求解思路,內容覆蓋科學研究、工程實踐、數據分析等多行業實際應用場景。 書中精選了大量基礎科學計算、數據科學與統計學實戰案例。本版內容已全面更新,適配所有主流工具庫的**版本,充分展現了Python 憑借簡潔的高級語法、豐富的計算與數據分析類庫與工具,在快速開發、探索式計算方面的突出優勢。 通過學習本書,讀者將熟練掌握多種計算技術,包括數組運算、符號計算、數據可視化、數值文件I/O、方程求解、優化、插值與積分;還將掌握各類領域專屬計算問題的處理方法,包括微分方程求解、數據分析、統計建模與機器學習。 本書核心內容: ?使用NumPy處理向量和矩陣 ?運用SymPy進行符號計算 ?利用Matplotlib繪制圖表,實現數據可視化 ?借助Pandas和SciPy完成數據分析任務 ?基於statsmodels和scikit-learn實現統計建模與機器學習 ?利用 Numba、Cython 對 Python 代碼進行性能優化
作者簡介
Robert Johansson是一位經驗豐富的Python程序員兼計算科學家,他擁有瑞典查爾姆斯理工大學理論物理學博士學位。他在學術界和工業界從事科學計算工作已逾15年,既參與過開源項目的開發,也做過專有性研究項目的開發。在開源領域,他為QuTip項目作出了很多貢獻,QuTip項目是一個用於模擬量子系統動力學的流行Python框架,他還為科學計算領域的其他幾個Python庫作出過貢獻。Robert對科學計算和軟件開發充滿熱情,並熱衷於傳授和交流這方面的**實踐方法,以便能在這些領域取得**的成果:新穎的、可重現的、可擴展的且有影響力的計算結果。
目錄大綱
目 錄
第1章 Python科學計算入門 1
1.1 Python數值計算環境 3
1.2 Python 4
1.3 IPython控制臺 5
1.3.1 輸入輸出緩存 6
1.3.2 自動補全和對象自省 6
1.3.3 文檔 7
1.3.4 與系統shell進行交互 7
1.3.5 IPython擴展 8
1.4 Jupyter 12
1.4.1 Jupyter QtConsole 13
1.4.2 Jupyter Notebook 13
1.4.3 Jupyter Lab 15
1.4.4 代碼框類型 16
1.4.5 編輯代碼框 16
1.4.6 Markdown代碼框 17
1.4.7 富文本輸出顯示 19
1.4.8 nbconvert 21
1.5 Spyder集成開發環境 23
1.5.1 源代碼編輯器 25
1.5.2 Spyder控制臺 25
1.5.3 對象查看器 26
1.6 本章小結 26
1.7 擴展閱讀 26
第2章 向量、矩陣和多維數組 27
2.1 導入模塊 28
2.2 NumPy Array對象 28
2.2.1 數據類型 29
2.2.2 內存中數組數據的順序 31
2.3 創建數組 32
2.3.1 從列表和其他類數組對象創建數組 33
2.3.2 以常量填充的數組 33
2.3.3 以遞增序列填充的數組 34
2.3.4 以對數序列填充的數組 34
2.3.5 meshgrid數組 35
2.3.6 創建未初始化的數組 35
2.3.7 使用其他數組的屬性創建數組 36
2.3.8 創建矩陣數組 36
2.4 索引和切片 37
2.4.1 一維數組 37
2.4.2 多維數組 38
2.4.3 視圖 40
2.4.4 花式索引和布爾值索引 40
2.5 調整數組的形狀和大小 42
2.6 向量化表達式 46
2.6.1 算術運算 47
2.6.2 逐元素進行操作的函數 49
2.6.3 聚合函數 51
2.6.4 布爾數組和條件表達式 53
2.6.5 集合運算 55
2.6.6 數組運算 56
2.7 矩陣和向量運算 57
2.8 本章小結 62
2.9 擴展閱讀 62
第3章 符號計算 63
3.1 導入SymPy 64
3.2 符號 64
3.3 表達式 71
3.4 表達式操作 72
3.4.1 簡化 72
3.4.2 展開 73
3.4.3 因式分解、合並同類項 74
3.4.4 分式分解、通分、消去公因子 75
3.4.5 替換 75
3.5 數值計算 76
3.6 微積分 77
3.6.1 導數 77
3.6.2 積分 79
3.6.3 級數展開 80
3.6.4 極限 82
3.6.5 和與積 82
3.7 方程 83
3.8 線性代數 85
3.9 本章小結 88
3.10 擴展閱讀 88
第4章 繪圖和可視化 89
4.1 導入模塊 90
4.2 入門 91
4.3 Figure對象 95
4.4 Axes實例 96
4.4.1 繪圖類型 97
4.4.2 線條屬性 98
4.4.3 圖例 101
4.4.4 文本格式和註釋 102
4.4.5 軸屬性 104
4.5 Axes高級布局 113
4.5.1 圖中圖 113
4.5.2 子圖 114
4.5.3 subplot2grid 116
4.5.4 GridSpec 116
4.6 色圖 117
4.7 3D圖形 120
4.8 本章小結 122
4.9 擴展閱讀 122
第5章 方程求解 123
5.1 導入模塊 124
5.2 線性方程組 124
5.2.1 方形方程組 125
5.2.2 矩形方程組 129
5.3 特征值問題 132
5.4 非線性方程 134
5.4.1 單變量方程 134
5.4.2 非線性方程組 140
5.5 本章小結 143
5.6 擴展閱讀 144
第6章 優化 145
6.1 導入模塊 146
6.2 優化問題的分類 146
6.3 單變量優化 148
6.4 無約束的多變量優化問題 151
6.5 非線性最小二乘問題 157
6.6 受約束的優化問題 159
6.7 本章小結 165
6.8 擴展閱讀 165
第7章 插值 166
7.1 導入模塊 166
7.2 插值概述 167
7.3 多項式 168
7.4 多項式插值 170
7.5 樣條插值 174
7.6 多變量插值 176
7.7 本章小結 181
7.8 擴展閱讀 182
第8章 積分 183
8.1 導入模塊 184
8.2 數值積分方法 184
8.3 使用SciPy進行數值積分 187
8.4 多重積分 192
8.5 符號積分和任意精度積分 196
8.6 積分變換 198
8.7 本章小結 201
8.8 擴展閱讀 201
第9章 常微分方程 203
9.1 導入模塊 203
9.2 常微分方程 204
9.3 使用符號方法求解ODE 205
9.3.1 方向場 210
9.3.2 使用拉普拉斯變換求解ODE 213
9.4 數值法求解ODE 216
9.5 使用SciPy對ODE進行數值積分 219
9.6 本章小結 229
9.7 擴展閱讀 230
第10章 稀疏矩陣和圖 231
10.1 導入模塊 232
10.2 SciPy中的稀疏矩陣 232
10.2.1 創建稀疏矩陣的函數 236
10.2.2 稀疏線性代數函數 238
10.2.3 線性方程組 238
10.2.4 圖和網絡 243
10.3 本章小結 249
10.4 擴展閱讀 249
第11章 偏微分方程 250
11.1 導入模塊 251
11.2 偏微分方程 251
11.3 有限差分法 252
11.4 有限元法 257
11.5 使用FEniCS求解PDE 260
11.6 本章小結 277
11.7 擴展閱讀 278
第12章 數據處理和分析 279
12.1 導入模塊 280
12.2 Pandas介紹 280
12.2.1 Series對象 280
12.2.2 DataFrame對象 283
12.2.3 時間序列 291
12.3 Seaborn圖形庫 300
12.4 本章小結 304
12.5 擴展閱讀 304
第13章 統計 306
13.1 導入模塊 306
13.2 概率統計回顧 307
13.3 隨機數 308
13.4 隨機變量及其分布 312
13.5 假設檢驗 318
13.6 非參數法 322
13.7 本章小結 324
13.8 擴展閱讀 324
第14章 統計建模 325
14.1 導入模塊 326
14.2 統計建模簡介 326
14.3 使用Patsy定義統計模型 327
14.4 線性回歸 334
14.5 離散回歸 342
14.5.1 邏輯回歸 342
14.5.2 泊松回歸模型 346
14.6 時間序列 349
14.7 本章小結 353
14.8 擴展閱讀 353
第15章 機器學習 354
15.1 導入模塊 355
15.2 機器學習回顧 355
15.3 回歸 357
15.4 分類 365
15.5 聚類 369
15.6 本章小結 372
15.7 擴展閱讀 373
第16章 貝葉斯統計 374
16.1 導入模塊 375
16.2 貝葉斯統計簡介 375
16.3 定義模型 377
16.3.1 後驗分布采樣 382
16.3.2 線性回歸 384
16.4 本章小結 394
16.5 擴展閱讀 394
第17章 信號處理 395
17.1 導入模塊 395
17.2 頻譜分析 396
17.2.1 傅裏葉變換 396
17.2.2 窗口函數 400
17.2.3 頻譜圖 403
17.3 信號濾波器 407
17.3.1 卷積濾波器 407
17.3.2 FIR和IIR濾波器 409
17.4 本章小結 413
17.5 擴展閱讀 413
第18章 數據的輸入與輸出 414
18.1 導入模塊 415
18.2 CSV格式 415
18.3 HDF5 419
18.3.1 h5py庫 420
18.3.2 PyTables庫 430
18.3.3 Pandas HDFStore 433
18.4 Parquet 435
18.5 JSON 438
18.6 序列化 441
18.7 本章小結 443
18.8 擴展閱讀 444
第19章 代碼優化 445
19.1 導入模塊 447
19.2 Numba 447
19.3 Cython 453
19.4 本章小結 462
19.5 擴展閱讀 463
附錄A 安裝 464
A.1 Miniconda和conda 465
A.2 為Jupyter Notebook註冊內核 470
A.3 安裝一個完整的環境 470
A.4 本附錄小結 473
A.5 擴展閱讀 473



