矩阵串联 numpy.concatenate操作数据的实际执行情况

矩阵串联 np.concatenate((a, b), axis=#)
可以简单认为 按某方向轴,两矩阵a b 相加的结果

  1. 当 axis=0时 按列-插入
  2. 当 axis=1时 按行-插入
  3. 当 axis=2时 先行后列-插入
    三维数组和二维数组处理方式略微不同,主要体现在(矩阵串联前)插入前是否转置
a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6]]) 

#axis表示沿着某个轴拼接,注意维度要相适应
# axis=0 默认为列方向
np.concatenate((a, b), axis=0)
 >>>
 array([[1, 2],
        [3, 4],
        [5, 6]]) 
   
# axis=1为行方向的矩阵相加
np.concatenate((a, b.T), axis=1)
>>>
array([[1, 2, 5],
       [3, 4, 6]])
       
# axis=2 数组行列两方向的矩阵相加,注意维度

np.concatenate((a, b), axis=0) 时,结果如下:把b转置再按列-插入
在这里插入图片描述
np.concatenate((a, b.T), axis=1) 时,结果如下:把b.T转置再逐行-插入
在这里插入图片描述

 a = np.array([[[1,2,3],[4,5,6]],[[1,2,3],[4,5,6]]])
 c = np.array([[[5,6,7],[7,8,9]],[[4,5,6],[5,6,7]]])
 
np.concatenate((a, c), axis=0)
>>>
array([[[1 2 3]
       [4 5 6]]
        
       [[1 2 3]
       [4 5 6]]

       [[5 6 7]
       [7 8 9]]

       [[4 5 6]
       [5 6 7]]])
       
np.concatenate((a, c), axis=1)
>>>
array([[[1, 2, 3],
        [4, 5, 6],
        [5, 6, 7],
        [7, 8, 9]],
 
       [[1, 2, 3],
        [4, 5, 6],
        [4, 5, 6],
        [5, 6, 7]]])
        
np.concatenate((a, c), axis=2)
>>>
array([[[1, 2, 3, 5, 6, 7],
        [4, 5, 6, 7, 8, 9]],
 
       [[1, 2, 3, 4, 5, 6],
        [4, 5, 6, 5, 6, 7]]])

np.concatenate((a, c), axis=0) 时,结果如下:按列-插入
在这里插入图片描述
在这里插入图片描述

np.concatenate((a, c), axis=1) 时,结果如下:按行-插入
在这里插入图片描述
在这里插入图片描述

np.concatenate((a, c), axis=2) 时,结果如下:先行后列-插入
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值