以下為大家分享一篇詳談Numpy中陣列重塑、合併與分割方法,具有很好的參考價值,希望對大家有幫助。一起過來看看吧
1.陣列重塑
#1.1一維陣列轉換成二維陣列
透過reshape( )函數即可實現,假設data是numpy.array類型的一維數組array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]),現在將其轉變為2行5列的二維數組,代碼如下:
#data.reshape((2,5))
作為參數的形狀的其中一維可以是-1,它表示該維度的大小由資料本身推斷而來,因此上面程式碼等價於:
data.reshape((2,-1))
1.2二維數組轉換成一維數組
將多維數組轉換成一維數組的運算通常稱為扁平化(flattening)或散開(raveling),因此有兩個函數可供選擇。執行程式碼如下:
data.ravel() # 不会产生源数据的副本 data.flatten() # 总是返回数据的副本
關於這兩點的區別,理解的不是很透徹。有人懂得話,歡迎評論交流。
2.陣列的合併與分割
#2.1陣列的合併
numpy提供許多數字組合並的方法,這裡只介紹最常用的一種,即concatenate方法,程式碼如下:
arr1 = np.array([[1,2,3], [4,5,6]]) arr2 = np.array([[7,8,9], [10,11,12]]) data = np.concatenate([arr1, arr2], axis=0) # axis参数指明合并的轴向,0表示按行,1表示按列
#2.2數組的拆分
這裡只介紹split函數
np.split(data, [1], axis=0 )#data為拆分的數組,[1]為拆分的行號或列號,axis表示按列或行進行拆分(預設為0,即按行拆分)
相關推薦:#########對numpy中數組元素的統一賦值實例#############淺聊numpy數組的幾種排序方式_python######### #################以上是詳談Numpy中數組重塑、合併與分割方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!