Python科學計算和數(shù)據(jù)科學應用(第2版) 使用NumPy、SciPy和matplotlib
定 價:198 元
叢書名:大數(shù)據(jù)應用與技術(shù)叢書
- 作者:[美]羅伯特·約翰遜(Robert Johansson) 著,黃強 譯
- 出版時間:2020/6/1
- ISBN:9787302552802
- 出 版 社:清華大學出版社
- 中圖法分類:TP311.561
- 頁碼:512
- 紙張:膠版紙
- 版次:1
- 開本:16K
《Python科學計算和數(shù)據(jù)科學應用(第2版) 使用NumPy、SciPy和matplotlib》全面介紹Python在數(shù)值計算和數(shù)學領(lǐng)域的模塊、標準庫以及多個開源Python庫,如NumPy、SciPy、FiPy、matplotlib等。在上一版的基礎(chǔ)上,本書做了全面修訂,更新了每個包的更新細節(jié)以及Jupyter項目的變化,演示了數(shù)值計算和數(shù)學建模在大數(shù)據(jù)、云計算、金融工程、商業(yè)管理等領(lǐng)域的應用。
本書提供了Python在數(shù)據(jù)科學和統(tǒng)計分析中很多新的應用示例,對上一版中的示例進行了擴展,每個示例都充分展示了Python的簡潔語法及其數(shù)據(jù)分析方法在快速開發(fā)和探索性計算方面的強大功能。
通過閱讀本書,讀者將熟悉很多計算技術(shù),包括基于數(shù)組的計算和符號計算、數(shù)據(jù)可視化和數(shù)值文件讀寫、方程求解、優(yōu)化、插值和積分以及特定領(lǐng)域的計算問題,如微分方程求解、數(shù)據(jù)分析、統(tǒng)計建模和機器學習等。
Robert Johansson是一位經(jīng)驗豐富的Python程序員和計算科學家,他擁有瑞典查爾斯理工大學理論物理學博士學位。他在學術(shù)界和工業(yè)界從事科學計算工作超過10年,既參與過開源項目的開發(fā),也做過專有性研究項目的開發(fā)。在開源領(lǐng)域,他為QuTip項目做出了很多貢獻,QuTip項目是一個很流行的用于模擬量子動力學的Python框架,他還為科學計算領(lǐng)域的其他幾個Python庫做出過貢獻。Robert對科學計算和軟件開發(fā)充滿熱情,并熱衷于傳授和交流這方面的佳實踐,以便能在這些領(lǐng)域取得好的成果:新穎的、可重現(xiàn)的、可擴展的計算結(jié)果。Robert在理論物理和計算物理領(lǐng)域有5年的研究背景,目前他是IT行業(yè)的數(shù)據(jù)科學家。
譯者簡介
黃強,本科和碩士分別畢業(yè)于中山大學和中國科學院研究生院,目前在一家國有銀行從事信息科技方面的工作。對信息技術(shù)的前沿發(fā)展及應用有著濃厚的興趣,包括云計算、人工智能、金融科技等,翻譯過多本技術(shù)專著。
第1章 科學計算介紹 1
1.1 Python數(shù)值計算環(huán)境 3
1.2 Python 4
1.3 IPython控制臺 5
1.3.1 輸入輸出緩存 6
1.3.2 自動補全和對象自省(Object Introspection) 6
1.3.3 文檔 7
1.3.4 與shell進行交互 7
1.3.5 IPython擴展 8
1.4 Jupyter 13
1.4.1 Jupyter QtConsole 13
1.4.2 Jupyter Notebook 14
1.4.3 Jupyter Lab 16
1.4.4 單元類型 16
1.4.5 編輯單元 17
1.4.6 Markdown單元 18
1.4.7 輸出顯示 19
1.4.8 nbconvert 22
1.5 Spyder集成開發(fā)環(huán)境 24
1.5.1 源代碼編輯器 25
1.5.2 Spyder控制臺 26
1.5.3 對象查看器 26
1.6 本章小結(jié) 26
1.7 擴展閱讀 27
1.8 參考文獻 27
第2章 向量、矩陣和多維數(shù)組 29
2.1 導入模塊 30
2.2 NumPy Array對象 30
2.2.1 數(shù)據(jù)類型 31
2.2.2 內(nèi)存中數(shù)組數(shù)據(jù)的順序 33
2.3 創(chuàng)建數(shù)組 34
2.3.1 從列表和其他類數(shù)組對象創(chuàng)建數(shù)組 35
2.3.2 以常量填充的數(shù)組 35
2.3.3 以增量序列填充的數(shù)組 36
2.3.4 以等比數(shù)列填充的數(shù)組 37
2.3.5 Meshgrid數(shù)組 37
2.3.6 創(chuàng)建未初始化的數(shù)組 38
2.3.7 使用其他數(shù)組的屬性創(chuàng)建數(shù)組 38
2.3.8 創(chuàng)建矩陣數(shù)組 38
2.4 索引和切片 39
2.4.1 一維數(shù)組 39
2.4.2 多維數(shù)組 41
2.4.3 視圖 42
2.4.4 花式索引和布爾索引 43
2.5 調(diào)整形狀和大小 45
2.6 向量化表達式 48
2.6.1 算術(shù)運算 49
2.6.2 逐個元素進行操作的函數(shù) 52
2.6.3 聚合函數(shù) 54
2.6.4 布爾數(shù)組和條件表達式 56
2.6.5 集合運算 59
2.6.6 數(shù)組運算 60
2.7 矩陣和向量運算 61
2.8 本章小結(jié) 66
2.9 擴展閱讀 66
2.10 參考文獻 66
第3章 符號計算 67
3.1 導入SymPy 67
3.2 符號 68
3.3 表達式 74
3.4 表達式操作 76
3.4.1 化簡 76
3.4.2 展開 77
3.4.3 因式分解、合并同類項 78
3.4.4 分式分解、通分、消除公因子 79
3.4.5 替換 79
3.5 數(shù)值計算 80
3.6 微積分 81
3.6.1 導數(shù) 81
3.6.2 積分 83
3.6.3 級數(shù)展開 85
3.6.4 極限 86
3.6.5 和與積 87
3.7 方程 88
3.8 線性代數(shù) 89
3.9 本章小結(jié) 92
3.10 擴展閱讀 93
3.11 參考文獻 93
第4章 繪圖和可視化 95
4.1 導入模塊 96
4.2 入門 96
4.3 Figure對象 101
4.4 Axes實例 102
4.4.1 繪圖類型 103
4.4.2 線條屬性 103
4.4.3 圖例 107
4.4.4 文本格式和注釋 108
4.4.5 軸屬性 110
4.5 Axes布局 119
4.5.1 圖中圖 119
4.5.2 plt.subplots 121
4.5.3 plt.subplot2grid 123
4.5.4 GridSpec 123
4.6 繪制色圖 124
4.7 繪制3D圖形 126
4.8 本章小結(jié) 128
4.9 擴展閱讀 128
4.10 參考文獻 129
第5章 方程求解 131
5.1 導入模塊 131
5.2 線性方程組 132
5.2.1 方形方程組 133
5.2.2 矩形方程組 137
5.3 特征值問題 141
5.4 非線性方程 142
5.4.1 單變量方程 142
5.4.2 非線性方程組 149
5.5 本章小結(jié) 152
5.6 擴展閱讀 152
5.7 參考文獻 153
第6章 優(yōu)化 155
6.1 導入模塊 155
6.2 優(yōu)化問題的分類 156
6.3 單變量優(yōu)化 158
6.4 無約束的多變量優(yōu)化問題 160
6.5 非線性小二乘問題 167
6.6 受約束的優(yōu)化問題 168
6.7 本章小結(jié) 175
6.8 擴展閱讀 175
6.9 參考文獻 176
第7章 插值 177
7.1 導入模塊 177
7.2 插值概述 178
7.3 多項式 179
7.4 多項式插值 181
7.5 樣條插值 185
7.6 多變量插值 188
7.7 本章小結(jié) 193
7.8 擴展閱讀 193
7.9 參考文獻 193
第8章 積分 195
8.1 導入模塊 196
8.2 數(shù)值積分方法 196
8.3 使用SciPy進行數(shù)值積分 199
8.4 多重積分 204
8.5 符號積分和任意精度積分 208
8.6 積分變換 211
8.7 本章小結(jié) 214
8.8 擴展閱讀 214
8.9 參考文獻 214
第9章 常微分方程 215
9.1 導入模塊 215
9.2 常微分方程 216
9.3 使用符號方法求解ODE 217
9.3.1 方向場 222
9.3.2 使用拉普拉斯變換求解ODE 225
9.4 數(shù)值法求解ODE 228
9.5 使用SciPy對ODE進行
數(shù)值積分 231
9.6 本章小結(jié) 242
9.7 擴展閱讀 242
9.8 參考文獻 243
第10章 稀疏矩陣和圖 245
10.1 導入模塊 245
10.2 SciPy中的稀疏矩陣 246
10.2.1 創(chuàng)建稀疏矩陣的函數(shù) 250
10.2.2 稀疏線性代數(shù)函數(shù) 252
10.2.3 線性方程組 252
10.2.4 圖和網(wǎng)絡 257
10.3 本章小結(jié) 264
10.4 擴展閱讀 264
10.5 參考文獻 264
第11章 偏微分方程 265
11.1 導入模塊 266
11.2 偏微分方程 266
11.3 有限差分法 267
11.4 有限元法 272
11.5 使用FEniCS求解PDE 275
11.6 本章小結(jié) 293
11.7 擴展閱讀 294
11.8 參考文獻 294
第12章 數(shù)據(jù)處理和分析 295
12.1 導入模塊 296
12.2 Pandas介紹 296
12.2.1 Series對象 296
12.2.2 DataFrame對象 299
12.2.3 時間序列 307
12.3 Seaborn圖形庫 317
12.4 本章小結(jié) 321
12.5 擴展閱讀 322
12.6 參考文獻 322
第13章 統(tǒng)計 323
13.1 導入模塊 323
13.2 概率統(tǒng)計回顧 324
13.3 隨機數(shù) 325
13.4 隨機變量及其分布 328
13.5 假設(shè)檢驗 335
13.6 非參數(shù)法 339
13.7 本章小結(jié) 341
13.8 擴展閱讀 341
13.9 參考文獻 341
第14章 統(tǒng)計建模 343
14.1 導入模塊 344
14.2 統(tǒng)計建模簡介 344
14.3 使用Patsy定義統(tǒng)計模型 345
14.4 線性回歸 352
14.5 離散回歸 360
14.5.1 對數(shù)幾率回歸 361
14.5.2 泊松回歸模型 365
14.6 時間序列 368
14.7 本章小結(jié) 372
14.8 擴展閱讀 372
14.9 參考文獻 372
第15章 機器學習 373
15.1 導入模塊 374
15.2 機器學習回顧 374
15.3 回歸 375
15.4 分類 384
15.5 聚類 388
15.6 本章小結(jié) 391
15.7 擴展閱讀 392
15.8 參考文獻 392
第16章 貝葉斯統(tǒng)計 393
16.1 導入模塊 394
16.2 貝葉斯統(tǒng)計簡介 394
16.3 定義模型 396
16.3.1 后驗分布采樣 400
16.3.2 線性回歸 403
16.4 本章小結(jié) 413
16.5 擴展閱讀 413
16.6 參考文獻 413
第17章 信號處理 415
17.1 導入模塊 415
17.2 頻譜分析 416
17.2.1 傅里葉變換 416
17.2.2 加窗 421
17.2.3 頻譜圖 424
17.3 信號濾波器 427
17.3.1 卷積濾波器 428
17.3.2 FIR和IIR濾波器 429
17.4 本章小結(jié) 434
17.5 擴展閱讀 434
17.6 參考文獻 434
第18章 數(shù)據(jù)的輸入輸出 435
18.1 導入模塊 436
18.2 CSV格式 436
18.3 HDF5 440
18.3.1 h5py庫 441
18.3.2 PyTables庫 451
18.3.3 Pandas HDFStore 455
18.4 JSON 456
18.5 序列化 460
18.6 本章小結(jié) 462
18.7 擴展閱讀 462
18.8 參考文獻 463
第19章 代碼優(yōu)化 465
19.1 導入模塊 467
19.2 Numba 467
19.3 Cython 473
19.4 本章小結(jié) 482
19.5 擴展閱讀 483
19.6 參考文獻 483
附錄 安裝 485