圖解 NumPy 學習筆記(一):初識 NumPy

 

import numpy as np # 導入 NumPy, 開始學習

感謝 NumPy, 本系列將使用圖解以及腦圖的方法來記錄我的《圖解 NumPy 學習筆記》。

NumPy 是 Numerical Python 的簡稱,它是目前 Python 數值計算 中最爲重要的基礎包。大多數計算包都提供了基於 NumPy 的科學計算函數功能,將 NumPy 的數組對象作爲數據交換的通用語。——《利用 Python 進行數據分析》



初識 NumPy

 

NumPy 基礎: 數組與向量化計算

NumPy 的官方文檔非常詳實,但由於數量過多,不容易讓初學者有一個好的 big-picture。

本系列計劃將 NumPy 較爲全面的展示給初學者,加以鄙人的學習使用技巧與感悟,文章必有疏漏或錯誤,還望各位不吝賜教。



Why: 爲什麼要使用 NumPy ?

,NumPy 既結合了 Python 開發效率高的優點,又能彌補了 Python 運行效率較低的缺點。

在學會使用 numba.njit+NumPy (數十倍的速度)和 cuda GPU (上百倍的速度)加速後,真的是“人生苦短,我用 Python "了。當然這都是後話了,相關內容,以後補充。

NumPy 的方法比 Python 方法要 快 10 到 1000 倍,並且使用 內存也更少,可以大大方便我們在數據處理方面的研究與開發。

爲什麼要使用 NumPy ?

快與慢,還要看個人如何使用,但是 內存映射 這是非常棒的。

如果面臨數據過多,又不想存入數據庫中,且數據的形式是數組或者矩陣,

可以使用 NumPy 的 np.save()np.load(, mmap_mode = 'r'),可以內存映射矩陣保留在磁盤上,無須全部讀入,以後會詳細說明。

單從 運行效率 而言,在 NumPy 上只要能被表示爲針對 數組或矩陣運算 的算法,其運行效率幾乎都可以與編譯過的等效 C 語言代碼媲美。

這是一篇講 Python 數據處理的超級好的文章


What: NumPy 是什麼?

NumPy 是 Python 數值計算 的基石。

它提供多種數據結構、算法以及大部分涉及 Python 數值計算所需的接口 。

NumPy 是什麼?

簡單來說,NumPy 是使用 Python 進行數據分析的一個核心工具。


How: 如何使用 NumPy ?

使用NumPy的不二法門就是 面向數組編程。(面向數組編程,超級好文,看完拍案叫絕!!!)

面向過程編程 好理解,

面向對象編程 也好理解,

那 面向數組編程 是什麼?

面向數組編程 就是以 向量化 代替 使用繁雜的 循環

用人話說就是用 數組或矩陣運算 代替 遍歷的 for 循環

具體怎麼做呢?

看見一個 for 循環,

就想一個問題 “ 我能否使用矩陣運算來代替這個 for 循環?


人生苦短,我用 Python

人生苦短,我用 NumPy


Last updated: 2019/9/20

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章