一维数组与二维数组的拼接与二维数组增加行

一维数组与二维数组的拼接

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]])


原文地址:https://www.cnblogs.com/lindaxin/p/8392698.html