NumPy - 數組(定義,拼接)

NumPy 教程(數組)

set_printoptions(threshold='nan')html

NumPy的數組中比較重要ndarray對象屬性有:python

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

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

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

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

ndarray.itemsize:數組中每一個元素的字節大小。例如,一個元素類型爲float64的數組itemsiz屬性值爲8(float64佔用64個bits,每一個字節長度爲8,因此64/8,佔用8個字節),又如,一個元素類型爲complex32的數組item屬性爲4(32/8)。code

ndarray.data:包含實際數組元素的緩衝區,因爲通常經過數組的索引獲取元素,因此一般不須要使用這個屬性。

htm

https://blog.csdn.net/sunny2038/article/details/9002531對象

 

數組拼接:

一、轉list,python拼接blog

二、numpy.append() 兩個數組拼接, 返回一維數組

三、numpy.concatenate()  兩個及以上的數組拼接,返回多維數組(維度自定義)

 

>>> b=np.array([11,22,33])
>>> b
array([11, 22, 33])
>>> np.append(a,b)
array([ 0,  1,  2,  3,  4, 11, 22, 33])

 

concatenate  [https://docs.scipy.org/doc/numpy-1.15.0/reference/generated/numpy.concatenate.html]

concatenate()效率更高,適合大規模的數據拼接

>>> a = np.array([[1, 2], [3, 4]])
>>> b = np.array([[5, 6]])
>>> np.concatenate((a, b), axis=0)
array([[1, 2],
       [3, 4],
       [5, 6]])
>>> np.concatenate((a, b.T), axis=1)
array([[1, 2, 5],
       [3, 4, 6]])
>>> np.concatenate((a, b), axis=None)
array([1, 2, 3, 4, 5, 6])
This function will not preserve masking of MaskedArray inputs.

>>>
>>> a = np.ma.arange(3)
>>> a[1] = np.ma.masked
>>> b = np.arange(2, 5)
>>> a
masked_array(data = [0 -- 2],
             mask = [False  True False],
       fill_value = 999999)
>>> b
array([2, 3, 4])
>>> np.concatenate([a, b])
masked_array(data = [0 1 2 2 3 4],
             mask = False,
       fill_value = 999999)
>>> np.ma.concatenate([a, b])
masked_array(data = [0 -- 2 2 3 4],
             mask = [False  True False False False False],
       fill_value = 999999)
相關文章
相關標籤/搜索