Numpy 數組屬性 (二)

Numpy 數組

NumPy數組是一個多維數組對象,稱爲ndarray。其由兩部分組成:

1.) 實際的數據

2.)描述這些數據的元數據

大部分操作僅針對於元數據,而不改變底層實際的數據。

注意: 數組下標從0開始。同一個NumPy 數組中所有元素的類型必須是相同的。


NumPy數組的秩與軸

NumPy數組的維數稱爲秩(rank),一維數組的秩爲1,二維數組的秩爲2,以此類推。

在NumPy中,每一個線性的數組稱爲是一個軸(axes),秩其實是描述軸的數量。比如說,二維數組相當於是兩個一維數組,其中第一個一維數組中每個元素又是一個一維數組。所以一維數組就是NumPy中的軸(axes),第一個軸相當於是底層數組,第二個軸是底層數組裏的數組。而軸的數量——秩,就是數組的維數。


NumPy 數組 ndarray對象屬性:

1.)   ndarray.ndim:數組的維數(即數組軸的個數),等於秩。最常見的爲二維數組(矩陣)。


2.)  ndarray.shape:數組的維度。爲一個表示數組在每個維度上大小的整數元組。例如二維數組中,表示數組的“行數”和“列數”。ndarray.shape返回一個元組,這個元組的長度就是維度的數目,即ndim屬性。


3.)  ndarray.size:數組元素的總個數,等於shape屬性中元組元素的乘積。


4.)  ndarray.dtype:表示數組中元素類型的對象,可使用標準的Python類型創建或指定dtype。另外也可使用前一篇文章中介紹的NumPy提供的數據類型。


5.) ndarray.dtype:表示數組中元素類型的對象,可使用標準的Pythonndarray.itemsize:數組中每個元素的字節大小。例如,一個元素類型爲float64的數組itemsiz屬性值爲8(float64佔用64個bits,每個字節長度爲8,所以64/8,佔用8個字節),又如,一個元素類型爲complex32的數組item屬性爲4(32/8)。型創建或指定dtype。另外也可使用前一篇文章中介紹的NumPy提供的數據類型。


6.)   ndarray.data:包含實際數組元素的緩衝區,由於一般通過數組的索引獲取元素,所以通常不需要使用這個屬性。


7.)   ndarray.arange :  arange函數類似於python的range函數,通過指定開始值、終值和步長來創建一維數組,注意數組不包括終值.

   示例: 

np.arange(1,2,0.1)   # 1 -- 起始值,2 -- 終止值, 0.1 -- 步長值(每個元素的增長點)
輸出: array([ 1.   1.1  1.2  1.3  1.4  1.5  1.6  1.7  1.8  1.9])


8.)     ndarray.linspace  :  通過指定開始值、終值和元素個數來創建一維數組,可以通過endpoint關鍵字指定是否包括終值,缺省設置是包括終值.

     示例:

b = np.linspace(0, 1, 12) # 0 -- 開始值 1 -- 終止值  12 -- 元素個數
print b
輸出: array([ 0.          0.09090909  0.18181818  0.27272727  0.36363636  0.45454545
  0.54545455  0.63636364  0.72727273  0.81818182  0.90909091  1.        ])

9.)     ndarray.logspace :   和linspace類似,不過它創建等比數列,下面的例子產生1(10^0)到100(10^2)、有20個元素的等比數列.





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