對於用Python的朋友來說,在平常的數值計算中肯定會用到一個開源包,沒錯,它就是大名鼎鼎的Numpy包,全稱為Numberical Python,是Python的一種開源的數值計算擴展,Numpy包內部集成了大量的數學函數庫,你都可以隨手拿來使用,極為方便!
好啦,下面咱們就來聊聊這個Numpy包吧!
在Python中,如果涉及到第三方包的使用,第一步要做的事情當然是將這個包導入啦!那咱們就看看Numpy包在使用時是如何進行導入的吧!
Numpy包的導入方式
與在Python中導入其他包或模塊的方式相同,Numpy包也是使用import語句進行導入的哦,它的導入格式如下所示哦:
import numpy as np
後面的as的意思就是在導入後為了編寫程序方便,給numpy起了個別名哦,所以在程序中直接寫np就是指的numpy哦!
好啦,下面就說一下numpy包常用到的一些基本方法吧!
首先,Numpy可將列錶轉換為數組哦
上面咱們所寫的程序就是調用numpy包將列錶轉換為數組哦,好啦,咱們運行一下看看結果如何吧:
下面呢,咱們再看一下numpy包中幾個基礎函數的使用方法哦!
numpy包中arange()函數的用法
首先看一下arange()函數的語法格式吧:
numpy.arange(start, stop, step)
看到了嗎,arange()函數有三個參數哦,咱們就分別說一下吧,首先參數start表示數組的起始數值哦,stop參數顧名思義當然是數組的終止數值啦,但是要記住哦,不包括stop這個終止值本身哦,參數step呢則是表示數組之間的間隔值哦!
也就是說哦,arange()函數就是返回一個包含起始值且不包含終止值的間隔為step的數組哦!當然啦,arange()函數中的三個參數並不是全部都是必須滴哦,是可以有默認值的!
好啦,還是舉個「慄子」來理解一下吧:
運行上面的程序後,輸出結果如下哦:
numpy包中linspace()函數的用法
同樣先看一下linspace()函數的語法格式哦:
matplotlib.linspace(start, stop, num=10, endpoint=True)
linspace()函數的作用是獲得一個即包含起始值又包含終止值得數組哦,而且這些數據之間的長度是相同的哦,其中參數num就是代表數組的長度哦,endpoint參數如果賦值為True,就是代表默認將終止值包含在數組中哦!
好啦,還是舉個「慄子」吧:
運行一下上面程序看看結果哦:
numpy包中內置函數的用法
在numpy包中擁有很多很多的內置函數哦,比如正弦sin()、餘弦cos()、指數exp()等,下面呢,咱們就挑幾個來看看用法吧,其他的內置函數用法都是一樣的哦,好啦,下面還是舉個「慄子」啦:
好啦,運行一下看看結果吧:
最後呢,再看一下numpy包中隨機函數的用法吧!
numpy包中random包的用法
首先說一下哦,random包是用來生成各種類型的數據樣本的哦,而且是隨機的哦,用起來非常方便,下面咱們就看一下random包到底如何使用吧:
首先呢,要使用random包當然是先進行導入啦,因為random包是內置於numpy包中的,因此呢,當導入了numpy後就可調用random包啦,如下所示哦:
import numpy as np
np.random.rand()
np.random.randn()
到這裡可能有朋友會問啦,上面的rand()和randn()函數有什麼區別呢?好啦,咱們就先說一下吧,rand()函數呢是用來生成一個數組的,比如rand(10)呢代表是生成一個長度為10的數組,而且這個數組的元素都是在0~1之間哦;而randn()函數呢則是生成一個標準的正態分布數組的,比如randn(10)表示生成一個10個元素的數組哦,而且這個數組是符合正態分布的哦!
好啦,為了讓大家印象深刻,咱們還是舉個「慄子」嘍:
運行一下看看結果哦:
好啦,上面咱們已經介紹了numpy包中的幾類函數的使用方法,其實呢,numpy包非常非常非常的強大,內部含有很多很多很多的函數,我們不可能一一都聊一遍,上面咱們所聊到的幾類函數的用法會在Python數據可視化中常用,這也是咱們挑選介紹這幾個函數的原因哦,當然啦,只要大家掌握了這幾個函數的用法,其他numpy包中的函數的使用當然是類似的哦,只要稍看一下特定函數的語法格式就可以正確使用啦!
好啦,這次咱們所介紹的幾個numpy函數也是算解答有些朋友在咱們最近討論的matplotlib庫數據可視化時調用到的numpy包中的某些函數的疑問啦,OK,今天咱們就聊到這吧,下次再見哦!
敬請關注「品位集結號」,為您帶來意外的小知識!