numpy数组的分割与合并

合并

 np.newaxis

import numpy as np
a=np.array([1,2,3])[:,np.newaxis]#变成列向量
b=np.array([4,5,6])[:,np.newaxis]#变成列向量
c=np.vstack((a,b)) #vertical  stack
d=np.hstack((a,b))#horizontal stack
print(a.shape ,b.shape)   # ((3,1),(3,1))
print(c.shape)    # (6,1)
print(d.shape)    # (3,2)
np.concatenate
import numpy as np
a=np.array([1,2,3])[:,np.newaxis]
b=np.array([4,5,6])[:,np.newaxis]
c=np.concatenate((a,b,b,a))
print(c)#按列合并
d=np.concatenate((a,b,b,a),axis=0)#设置在列上合并
print(d)
e=np.concatenate((a,b,b,a),axis=1)#设置在行上合并,3行4列
print(e)

分割

import numpy as np

a=np.arange(12).reshape((3,4))
print(a)
print(np.split(a,2,axis=1)) #   vertical纵向分2部分
print(np.split(a,3,axis=0)) #   horizontal横向分3部分
print(np.array_split(a,3,axis=1))#纵向分3部分

print(np.vsplit(a,3)) #横着分3组
print(np.hsplit(a,2)) #竖着分两组
原文地址:https://www.cnblogs.com/cpg123/p/11683343.html