一维数组与二维数组的拼接与二维数组增加行
一维数组与二维数组的拼接
numpy有很多的拼接函数。比如hstack和vstack等。网上又很多这样的总结帖子。但是两个数组能拼接的条件就是得满足两个数组的维度要相同。所以二维数组和一维数组拼接的时候需要使用newaxis将一维数组转化为二维数组,也就是shape从(3,)转化为(3,1)。
a = np.array([1,2,3]); b = np.array([[1],[2],[3]]); #将一维数组a转化为二维数组 a = a[:,np.newaxis]; c = np.concatenate((b,a),axis=1) print c.shape//输出为(3,2)
二维数组增加行
>>> a=np.array([[2,4,3],[2,4,5]]) >>> b=np.array([[8,7,6],[7,9,0]]) >>> c = np.concatenate((b,a),axis=0) >>> c array([[8, 7, 6], [7, 9, 0], [2, 4, 3], [2, 4, 5]]) >>> c = np.concatenate((a,b),axis=0) >>> c array([[2, 4, 3], [2, 4, 5], [8, 7, 6], [7, 9, 0]])