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)