np.concatenate中axis的理解

巫马嘉祯
2023-12-01

官方文档中参数 

concatenate(...)
    concatenate((a1, a2, ...), axis=0)

    Join a sequence of arrays along an existing axis.

    Parameters
    ----------
    a1, a2, ... : sequence of array_like
        The arrays must have the same shape, except in the dimension
        corresponding to `axis` (the first, by default).
    axis : int, optional
        The axis along which the arrays will be joined.  Default is 0.

    Return

array.shape,axis=0就是对第一个维度进行操作,

axis=1就是对第2个维度进行操作,

axis=2就是对第3个维度进行操作,以此类推…

所说的第一个维度就是沿着x方向进行拼接,也就是把矩阵和矩阵上下拼接;第二个维度就是沿着y方向进行拼接,也就是把矩阵和矩阵左右拼接;第三个维度就是沿着z方向进行拼接,也就是把矩阵和矩阵合在一起。(x,y方向就是正常的坐标轴方向)

注意: 拼接时候一定要注意维度,就好比axis=0,要进行上下拼接,那么两个矩阵的列数一定要相同;axis=1就是行数相同;axis=2就是行列数均相同。
————————————————
版权声明:本文为CSDN博主「ly_ljs_521」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/ly_ljs_521/article/details/123204684

例子

a = np.array([[1, 2], [3, 4]]) 
b = np.array([[5, 6]])
np.concatenate((a, b), axis=0)  # 这里的axis=0的表示按照行进行合并

array([[1, 2],
       [3, 4],
       [5, 6]])

a = np.array([[1, 2], [3, 4]]) 
b = np.array([[5, 6]])
np.concatenate((a, b.T), axis=1)  # 这里的axis=1的表示按照列进行合并

array([[1, 2, 5],
       [3, 4, 6]])

参考资料

深度学习中的concatenate使用_alxe_made的博客-CSDN博客_concatenate

np.concatenate中axis的理解_ly_ljs_521的博客-CSDN博客_concatenate的axis

np.concatenate() 使用说明_Tchunren的博客-CSDN博客_np.concat

 类似资料: