Python如何给数组(array对象)加行或列?
首先,导入模块:import numpy as np
方法一:np.row_stack((arr1,arr2)),np.columns_stack((矩阵1,矩阵2))
arr1 = np.array([[1,2],[3,4]])
arr2= np.ones(2)
arr3 = np.row_stack((arr1,arr2))#加一行
arr3 = np.columns_stack((arr1,arr2))#加一列
方法二:np.r_[arr1,arr2],np.c_[arr1,arr2]
arr1 = np.array([[1,2],[3,4]])
arr2= np.ones(2)
arr3 = np.r_[arr1,arr2]#加一行
arr3 = np.c_[arr1,arr2]#加一列
方法三:np.concatenate((arr1,arr2),axis=0或1)
arr1 = np.array([[1,2],[3,4]])
arr2= np.ones(2)
arr3 = np.concatenate((arr1,arr2),axis=0)#加一行
arr3 = np.concatenate((arr1,arr2),axis=1)#加一列
类似还有np.stack(), np.vstack(), np.dstack(), np.hstack()
方法四:np.insert(arr1,位置,arr2,axis=0或1)
arr1 = np.array([[1,2],[3,4]])
arr2= np.ones(2)
arr3 = np.insert(arr1,[2],arr2,axis=0)#加一行
arr3 = np.insert(arr1,[2],arr2,axis=1)#加一列
注意:加行时注意arr2的列维度必须与arr1匹配,加列时arr2的行维度必须与arr1匹配。