数组的拼接或合并操作

用深度学习处理图像时,常常涉及到图像数组的拼接或合并,下面总结python中数组的拼接和合并方法:

python中数组的拼接或合并常常要用到numpy工具包:

1.np.append(arr, values, axis=None):将数组元素进行拼接,axis用于指定方向,axis=0:纵向拼接;axis=1:横向拼接。

import numpy as np
a=[[1,2],
   [1,2]]
b=[[1,2],
   [1,2]]
s1=np.append(a,b,0)
s11=np.append(a,b,1)
#s2=np.concatenate()
print('s1=',s1)
print('s11=',s11)

 s1= [[1 2]
 [1 2]
 [1 2]
 [1 2]]


s11= [[1 2 1 2]
 [1 2 1 2]]

2.np.concatenate(a_tuple, axis=0, out=None):将整个数组作为一个元素拼接到另一个数组。

import numpy as np
a=[[1,2],
   [1,2]]
b=[[1,2],
   [1,2]]
s2=np.concatenate((a,b),0)
s22=np.concatenate((a,b),1)
print('s2=',s2)
print('s22=',s22)

s2= [[1 2]
 [1 2]
 [1 2]
 [1 2]]


s22= [[1 2 1 2]
 [1 2 1 2]]

3. np.hstack(tup):水平拼接,沿着行的方向,对列进行拼接:

s3=np.hstack((a,b))
print('s3=',s3)

s3= [[1 2 1 2]
 [1 2 1 2]] 

4.np.vstack(tup):垂直拼接,沿着列的方向,对行进行拼接:

s4=np.vstack((a,b))
print('s4=',s4)

 s4= [[1 2]
 [1 2]
 [1 2]
 [1 2]]

5.np.dstack(tup):深度拼接,沿着第三轴方向,对行和列都进行拼接:

s5=np.dstack((a,b))
print('s5=',s5)

 

s5= [[[1 1]
  [2 2]]

 [[1 1]
  [2 2]]]

6.np.column_stack(tup):水平拼接,沿着行的方向,对列进行拼接:

s6=np.column_stack((a,b))
print('s6=',s6)

 s6= [[1 2 1 2]
 [1 2 1 2]]

7.np.row_stack(tup):垂直拼接,沿着列的方向,对行进行拼接:

s7=np.row_stack((a,b))
print('s7=',s7)

s7= [[1 2]
 [1 2]
 [1 2]
 [1 2]] 

8.np.c_(tup):水平拼接,沿着行的方向,对列进行拼接:

s8=np.c_[a,b]
print('s8=',s8)

s8= [[1 2 1 2]
 [1 2 1 2]] 

9.np.r_(tup):垂直拼接,沿着列的方向,对行进行拼接:

s9=np.r_[a,b]
print('s9=',s9)

 s9= [[1 2]
 [1 2]
 [1 2]
 [1 2]]

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值