NumPy教學

NumPy 是一個 Python 包。 它代表 “Numeric Python”。 它是一個由多維數組對象和用於處理數組的例程集合組成的庫。

Numeric,即 NumPy 的前身,是由 Jim Hugunin 開發的。 也開發了另一個包 Numarray ,它擁有一些額外的功能。 2005年,Travis Oliphant 通過將 Numarray 的功能集成到 Numeric 包中來創建 NumPy 包。 這個開源專案有很多貢獻者。

NumPy 操作

使用NumPy,開發人員可以執行以下操作:

  • 數組的算數和邏輯運算。

  • 傅立葉變換和用於圖形操作的例程。

  • 與線性代數有關的操作。 NumPy 擁有線性代數和亂數生成的內置函數。

NumPy – MatLab 的替代之一

NumPy 通常與 SciPy(Scientific Python)和 Matplotlib(繪圖庫)一起使用。 這種組合廣泛用於替代 MatLab,是一個流行的技術計算平臺。 但是,Python 作為 MatLab 的替代方案,現在被視為一種更加現代和完整的編程語言。

NumPy 是開源的,這是它的一個額外的優勢。

教學目錄

  1. NumPy環境安裝配置 - 標準的 Python 發行版不會與 NumPy 模組捆綁在一起。 一個羽量級的替代方法是使用流行的 Python 包安裝程式 pip 來安裝 NumPy。
  2. NumPy Ndarray對象 - NumPy 中定義的最重要的對象是稱為 ndarray 的 N 維數組類型。 它描述相同類型的元素集合。可以使用基於零的索引訪問集合中的專案。
  3. NumPy數據類型 - NumPy 比 Python 支持更多種類的數值類型。
  4. NumPy數組屬性 - NumPy數組屬性返回一個包含數組維度的元組,它也可以用於調整數組大小。
  5. NumPy數組創建例程 - 新的ndarray對象可以通過任何下列數組創建例程或使用低級ndarray構造函數構造。
  6. NumPy來自現有數據的數組 - 這一章中會討論如何從現有數據創建數組。
  7. NumPy來自數值範圍的數組 - 這一章中學到如何從數值範圍創建數組。
  8. NumPy切片和索引 - ndarray對象中的元素遵循基於零的索引。 有三種可用的索引方法類型: 字段訪問,基本切片和高級索引。
  9. NumPy高級索引 - 如果一個ndarray是非元組序列,數據類型為整數或布爾值的ndarray,或者至少一個元素為序列對象的元組,就能夠用它來索引ndarray。
  10. NumPy廣播 - 術語廣播是指 NumPy 在算術運算期間處理不同形狀的數組的能力。 對數組的算術運算通常在相應的元素上進行。
  11. NumPy在數組上的迭代 - NumPy 包包含一個迭代器對象numpy.nditer。 它是一個有效的多維迭代器對象,可以用於在數組上進行迭代。 數組的每個元素可使用 Python 的標準Iterator介面來訪問。
  12. NumPy數組操作 - NumPy包中有幾個例程用於處理ndarray對象中的元素。
  13. NumPy位操作 - NumPy 包中可用的位操作函數。
  14. NumPy字串函數 - 對dtypenumpy.string_numpy.unicode_的數組執行向量化字串操作。 它們基於 Python 內置庫中的標準字串函數。
  15. NumPy數學算數函數 - NumPy 包含大量的各種數學運算功能。 NumPy 提供標準的三角函數,算術運算的函數,複數處理函數等。
  16. NumPy統計函數 - NumPy 有很多有用的統計函數,用於從數組中給定的元素中查找最小,最大,百分標準差和方差等。
  17. NumPy排序、搜索和計數函數 - NumPy中提供了各種排序相關功能。 這些排序函數實現不同的排序演算法,每個排序演算法的特徵在於執行速度,最壞情況性能,所需的工作空間和演算法的穩定性。
  18. NumPy位元組交換 - 存儲在電腦記憶體中的數據取決於 CPU 使用的架構。 它可以是小端(最小有效位存儲在最小地址中)或大端(最小有效位元組存儲在最大地址中)。
  19. NumPy副本和視圖 - 在執行函數時,其中一些返回輸入數組的副本,而另一些返回視圖。 當內容物理存儲在另一個位置時,稱為副本。 另一方面,如果提供了相同記憶體內容的不同視圖,我們將其稱為視圖。
  20. NumPy矩陣庫 - NumPy 包包含一個 Matrix庫numpy.matlib。此模組的函數返回矩陣而不是返回ndarray對象。
  21. NumPy線性代數 - NumPy 包包含numpy.linalg模組,提供線性代數所需的所有功能。
  22. NumPy使用 Matplotlib 繪製直方圖 - NumPy 有一個numpy.histogram()函數,它是數據的頻率分佈的圖形表示。 水準尺寸相等的矩形對應於類間隔,稱為bin,變數height對應於頻率。
  23. NumPy IO檔操作 - ndarray對象可以保存到磁片檔並從磁片檔加載。

注:本教程內容由 http://www.flygon.net 翻譯提供。


開始學習 >> :NumPy環境安裝配置