日韩偷拍一区二区,国产香蕉久久精品综合网,亚洲激情五月婷婷,欧美日韩国产不卡

在線客服
Python科學計算(第2版)圖書
人氣:40

Python科學計算(第2版)

【好評返5元店鋪禮券】歷時六年,多次修訂,完成一項計算或圖形處理任務,用C語言要寫1000行代碼,用Java要寫100行,借助《Python科學計算(第2版)》,只需10行;Python代碼新版本更新
  • 所屬分類:圖書 >計算機/網絡>計算機理論  
  • 作者:[張若愚] 著
  • 產品參數:
  • 叢書名:--
  • 國際刊號:9787302426585
  • 出版社:清華大學出版社
  • 出版時間:2016-04
  • 印刷時間:--
  • 版次:2
  • 開本:16開
  • 頁數:716
  • 紙張:輕型紙
  • 包裝:平裝
  • 套裝:

內容簡介

本書詳細介紹Python科學計算中常用的擴展庫NumPy、SciPy、matplotlib、Pandas、SymPy、TTK、Mayavi、OpenCV、Cython,涉及數值計算、界面制作、三維可視化、圖像處理、提高運算效率等多方面的內容。所附光盤中包含所有章節的Notebook以及便攜式運行環境WinPython,以方便讀者運行書中所有實例。

編輯推薦

1. 使用Python各種擴展庫完成數值計算、界面制作、三維可視化、圖像處理、提高運算速度等任務

2. 光盤中提供作者本人整合開發的便攜式運行環境WinPython,省去讀者一一收集Python各個擴展庫并安裝的麻煩,涵蓋NumPy、SciPy、matplotlib、Pandas、SymPy、TVTK、Mayavi、OpenCV、Cython等

3. 文前精美彩插演示書中示例所展現的Python各擴展庫的強大處理效果,裝幀和排版都十分考究

作者簡介

張若愚,畢業于華中理工大學(現華中科技大學)通信工程專業,2004年獲日本姬路工業大學(現兵庫縣立大學)碩士學位。畢業后于日本神戶制鋼綜合研究所從事研究開發工作至今,研究方向為:嵌入式DSP信號處理系統開發,嵌入式MCU控制系統開發,工業控制軟件開發,信號處理、數據處理以及生產系統的計算機模擬。在工作中他積極采用Python作為主要編程語言,在數據處理、信號分析、工業控制、算法模擬等領域取得了較好的研究成果。已完成的研究課題有:嵌入式聲音分離系統、車載音響設備、超聲波探傷系統、壓縮機系統的數字模擬等。

目錄

目 錄

第1章 Python科學計算環境的安裝與簡介 1

1.1 Python簡介 1

1.1.1 Python 2還是Python 3 1

1.1.2 開發環境 2

1.1.3 集成開發環境(IDE) 5

1.2 IPython Notebook入門 9

1.2.1 基本操作 10

1.2.2 魔法(Magic)命令 12

1.2.3 Notebook的顯示系統 20

1.2.4 定制IPython Notebook 24

1.3 擴展庫介紹 27

1.3.1 數值計算庫 27

1.3.2 符號計算庫 28

1.3.3 繪圖與可視化 28

1.3.4 數據處理和分析 29

1.3.5 界面設計 30

1.3.6 圖像處理和計算機視覺 31

1.3.7 提高運算速度 31

第2章 NumPy-快速處理數據 33

2.1 ndarray對象 33

2.1.1 創建 34

2.1.2 元素類型 35

2.1.3 自動生成數組 37

2.1.4 存取元素 40

2.1.5 多維數組 43

2.1.6 結構數組 47

2.1.7 內存結構 50

2.2 ufunc函數 56

2.2.1 四則運算 58

2.2.2 比較運算和布爾運算 59

2.2.3 自定義ufunc函數 61

2.2.4 廣播 62

2.2.5 ufunc的方法 66

2.3 多維數組的下標存取 68

2.3.1 下標對象 68

2.3.2 整數數組作為下標 70

2.3.3 一個復雜的例子 72

2.3.4 布爾數組作為下標 73

2.4 龐大的函數庫 74

2.4.1 隨機數 74

2.4.2 求和、平均值、方差 77

2.4.3 大小與排序 81

2.4.4 統計函數 86

2.4.5 分段函數 89

2.4.6 操作多維數組 92

2.4.7 多項式函數 96

2.4.8 多項式函數類 98

2.4.9 各種乘積運算 103

2.4.10 廣義ufunc函數 106

2.5 實用技巧 110

2.5.1 動態數組 110

2.5.2 和其他對象共享內存 112

2.5.3 與結構數組共享內存 115

第3章 SciPy-數值計算庫 117

3.1 常數和特殊函數 117

3.2 擬合與優化-optimize 119

3.2.1 非線性方程組求解 120

3.2.2 最小二乘擬合 121

3.2.3 計算函數局域最小值 125

3.2.4 計算全域最小值 127

3.3 線性代數-linalg 128

3.3.1 解線性方程組 129

3.3.2 最小二乘解 130

3.3.3 特征值和特征向量 132

3.3.4 奇異值分解-SVD 134

3.4 統計-stats 136

3.4.1 連續概率分布 136

3.4.2 離散概率分布 139

3.4.3 核密度估計 140

3.4.4 二項分布、泊松分布、伽瑪分布 142

3.4.5 學生t-分布與t檢驗 147

3.4.6 卡方分布和卡方檢驗 151

3.5 數值積分-integrate 154

3.5.1 球的體積 154

3.5.2 解常微分方程組 156

3.5.3 ode類 157

3.5.4 信號處理-signal 164

3.5.5 中值濾波 164

3.5.6 濾波器設計 165

3.5.7 連續時間線性系統 167

3.6 插值-interpolate 172

3.6.1 一維插值 172

3.6.2 多維插值 177

3.7 稀疏矩陣-sparse 181

3.7.1 稀疏矩陣的存儲形式 182

3.7.2 最短路徑 183

3.8 圖像處理-ndimage 186

3.8.1 形態學圖像處理 187

3.8.2 圖像分割 192

3.9 空間算法庫-spatial 195

3.9.1 計算最近旁點 195

3.9.2 凸包 199

3.9.3 沃羅諾伊圖 201

3.9.4 德勞內三角化 204

第4章 matplotlib-繪制精美的圖表 207

4.1 快速繪圖 207

4.1.1 使用pyplot模塊繪圖 207

4.1.2 面向對象方式繪圖 210

4.1.3 配置屬性 211

4.1.4 繪制多子圖 212

4.1.5 配置文件 215

4.1.6 在圖表中顯示中文 217

4.2 Artist對象 220

4.2.1 Artist的屬性 221

4.2.2 Figure容器 223

4.2.3 Axes容器 224

4.2.4 Axis容器 226

4.2.5 Artist對象的關系 230

4.3 坐標變換和注釋 231

4.3.1 4種坐標系 234

4.3.2 坐標變換的流水線 236

4.3.3 制作陰影效果 240

4.3.4 添加注釋 241

4.4 塊、路徑和集合 243

4.4.1 Path與Patch 243

4.4.2 集合 245

4.5 繪圖函數簡介 255

4.5.1 對數坐標圖 255

4.5.2 極坐標圖 256

4.5.3 柱狀圖 257

4.5.4 散列圖 258

4.5.5 圖像 259

4.5.6 等值線圖 261

4.5.7 四邊形網格 264

4.5.8 三角網格 267

4.5.9 箭頭圖 269

4.5.10 三維繪圖 273

4.6 matplotlib技巧集 274

4.6.1 使用agg后臺在圖像上繪圖 274

4.6.2 響應鼠標與鍵盤事件 277

4.6.3 動畫 285

4.6.4 添加GUI面板 288

第5章 Pandas-方便的數據分析庫 291

5.1 Pandas中的數據對象 291

5.1.1 Series對象 291

5.1.2 DataFrame對象 293

5.1.3 Index對象 297

5.1.4 MultiIndex對象 298

5.1.5 常用的函數參數 300

5.1.6 DataFrame的內部結構 301

5.2 下標存取 303

5.2.1 []操作符 304

5.2.2 .loc[]和.iloc[]存取器 304

5.2.3 獲取單個值 306

5.2.4 多級標簽的存取 306

5.2.5 query()方法 307

5.3 文件的輸入輸出 307

5.3.1 CSV文件 308

5.3.2 HDF5文件 309

5.3.3 讀寫數據庫 313

5.3.4 使用Pickle序列化 314

5.4 數值運算函數 315

5.5 時間序列 323

5.5.1 時間點、時間段、時間間隔 323

5.5.2 時間序列 326

5.5.3 與NaN相關的函數 329

5.5.4 改變DataFrame的形狀 333

5.6 分組運算 338

5.6.1 groupby()方法 339

5.6.2 GroupBy對象 340

5.6.3 分組-運算-合并 341

5.7 數據處理和可視化實例 347

5.7.1 分析Pandas項目的提交歷史 347

5.7.2 分析空氣質量數據 354

第6章 SymPy-符號運算好幫手 359

6.1 從例子開始 359

6.1.1 封面上的經典公式 359

6.1.2 球體體積 361

6.1.3 數值微分 362

6.2 數學表達式 365

6.2.1 符號 365

6.2.2 數值 367

6.2.3 運算符和函數 368

6.2.4 通配符 371

6.3 符號運算 373

6.3.1 表達式變換和化簡 373

6.3.2 方程 376

6.3.3 微分 377

6.3.4 微分方程 378

6.3.5 積分 379

6.4 輸出符號表達式 380

6.4.1 lambdify 381

6.4.2 用autowrap()編譯表達式 381

6.4.3 使用cse()分步輸出表達式 384

6.5 機械運動模擬 385

6.5.1 推導系統的微分方程 386

6.5.2 將符號表達式轉換為程序 388

6.5.3 動畫演示 389

第7章 Traits & TraitsUI-輕松制作圖形界面 393

7.1 Traits類型入門 393

7.1.1 什么是Traits屬性 393

7.1.2 Trait屬性的功能 396

7.1.3 Trait類型對象 399

7.1.4 Trait的元數據 401

7.2 Trait類型 403

7.2.1 預定義的Trait類型 403

7.2.2 Property屬性 406

7.2.3 Trait屬性監聽 408

7.2.4 Event和Button屬性 411

7.2.5 動態添加Trait屬性 412

7.3 TraitsUI入門 413

7.3.1 默認界面 414

7.3.2 用View定義界面 415

7.4 用Handler控制界面和模型 425

7.4.1 用Handler處理事件 426

7.4.2 Controller和UIInfo對象 429

7.4.3 響應Trait屬性的事件 431

7.5 屬性編輯器 432

7.5.1 編輯器演示程序 433

7.5.2 對象編輯器 436

7.5.3 自定義編輯器 440

7.6 函數曲線繪制工具 444

第8章 TVTK與Mayavi-數據的三維可視化 451

8.1 VTK的流水線(Pipeline) 452

8.1.1 顯示圓錐 452

8.1.2 用ivtk觀察流水線 455

8.2 數據集 461

8.2.1 ImageData 461

8.2.2 RectilinearGrid 466

8.2.3 StructuredGrid 467

8.2.4 PolyData 470

8.3 TVTK的改進 473

8.3.1 TVTK的基本用法 474

8.3.2 Trait屬性 475

8.3.3 序列化 476

8.3.4 集合迭代 476

8.3.5 數組操作 477

8.4 TVTK可視化實例 478

8.4.1 切面 479

8.4.2 等值面 484

8.4.3 流線 487

8.4.4 計算圓柱的相貫線 491

8.5 用mlab快速繪圖 496

8.5.1 點和線 497

8.5.2 Mayavi的流水線 498

8.5.3 二維圖像的可視化 501

8.5.4 網格面mesh 505

8.5.5 修改和創建流水線 508

8.5.6 標量場 511

8.5.7 矢量場 513

8.6 將TVTK和Mayavi嵌入界面 515

8.6.1 TVTK場景的嵌入 516

8.6.2 Mayavi場景的嵌入 518

第9章 OpenCV-圖像處理和計算機視覺 523

9.1 圖像的輸入輸出 523

9.1.1 讀入并顯示圖像 523

9.1.2 圖像類型 524

9.1.3 圖像輸出 525

在線預覽

Python科學計算環境的安裝與簡介

1.1 Python簡介

Python是一種解釋型、面向對象、動態的高級程序設計語言。自從20世紀90年代初Python語言誕生至今,它逐漸被廣泛應用于處理系統管理任務和開發Web系統。目前Python已經成為受歡迎的程序設計語言之一。

由于Python語言的簡潔、易讀以及可擴展性,在國外用Python做科學計算的研究機構日益增多,一些知名大學已經采用Python教授程序設計課程。眾多開源的科學計算軟件包都提供了Python的調用接口,例如計算機視覺庫OpenCV、三維可視化庫VTK、復雜網絡分析庫igraph等。而Python專用的科學計算擴展庫就更多了,例如三個十分經典的科學計算擴展庫:NumPy、SciPy和matplotlib,它們分別為Python提供了快速數組處理、數值運算以及繪圖功能。因此Python語言及其眾多的擴展庫所構成的開發環境十分適合工程技術、科研人員處理實驗數據、制作圖表,甚至開發科學計算應用程序。近年隨著數據分析擴展庫Pandas、機器學習擴展庫scikit-learn以及IPython Notebook交互環境的日益成熟,Python也逐漸成為數據分析領域的挑選工具。

說起科學計算,首先會被提到的可能是MATLAB。然而除了MATLAB的一些專業性很強的工具箱目前還無法替代之外,MATLAB的大部分常用功能都可以在Python世界中找到相應的擴展庫。和MATLAB相比,用Python做科學計算有如下優點:

● 首先,MATLAB是一款商用軟件,并且價格不菲。而Python免費,眾多開源的科學計算庫都提供了Python的調用接口。用戶可以在任何計算機上免費安裝Python及其絕大多數擴展庫。

● 其次,與MATLAB相比,Python是一門更易學、更嚴謹的程序設計語言。它能讓用戶編寫出更易讀、更易維護的代碼。

● 后,MATLAB主要專注于工程和科學計算。然而即使在計算領域,也經常會遇到文件管理、界面設計、網絡通信等各種需求。而Python有著豐富的擴展庫,可以輕易完成各種高級任務,開發者可以用Python實現完整應用程序所需的各種功能。

1.1.1 Python2還是Python3

自從2008年以來,Python3經歷了5個小版本的更迭,無論是語法還是標準庫都發展得十分成熟。許多重要的擴展庫也已經逐漸同時支持Python2和Python3。但是由于Python3不向下兼容,目前大多數開發者仍然在生產環境中使用Python2.7。在PyCon2014大會上,Python之父宣布Python 2.7的官方支持延長至2020年。因此本書仍然使用Python 2.7作為開發環境。

在本書涉及的擴展庫中,IPython、NumPy、SciPy、matplotlib、Pandas、SymPy、Cython、Spyder和OpenCV等都已經支持Python 3,而Traits、TraitsUI、TVTK、Mayavi等擴展庫則尚未著手Python 3的移植。雖然一些新興的三維可視化擴展庫正朝著替代Mayavi的方向努力,但目前Python環境中尚未有能替代VTK和Mayavi的專業級別的三維可視化擴展庫,因此本書仍保留第1版中相關的章節。

1.1.2 開發環境

和MATLAB等商用軟件不同,Python的眾多擴展庫由許多社區分別維護和,因此要一一將其收集齊全并安裝到計算機中是一件十分耗費時間和精力的事情。本節介紹兩個科學計算用的Python集成軟件包。讀者只需要下載并執行一個安裝程序,就能安裝好本書涉及的所有擴展庫。

網友評論(不代表本站觀點)

免責聲明

更多出版社
主站蜘蛛池模板: 广宗县| 柘荣县| 浙江省| 高密市| 辽阳县| 梅河口市| 甘洛县| 岑溪市| 肥乡县| 公安县| 拜泉县| 长阳| 化德县| 壤塘县| 区。| 富宁县| 大化| 莱州市| 珠海市| 会宁县| 定边县| 子洲县| 霍山县| 周至县| 宁强县| 晋中市| 诏安县| 福鼎市| 伊春市| 崇阳县| 遂昌县| 阜阳市| 区。| 贵定县| 长宁县| 无棣县| 博白县| 牙克石市| 青浦区| 云南省| 望城县|