# 操作和分隔堆叠
# 操作
以下方法都是作为numpy的方法实现,而非ndarray类方法;并且都不会修改原有数组,而是返回处理后的结果。
append:将值添加到数组末尾
insert: 沿指定轴将值插入到指定下标之前
delete: 返回删掉某个轴的子数组的新数组
unique: 寻找数组内的唯一元素
a = np.array([0,1,4,7,2,1,4,3]) np.unique(a) # array([0, 1, 2, 3, 4, 7]) b = np.array([[0,1,4,],[7,2,1],[4,3,0]]) np.unique(b) # array([0, 1, 2, 3, 4, 7])
# 分隔
- numpy级别的方法hsplit和vsplit方法可以沿着数组的水平轴和垂直轴拆分数组。
a = array([
[ 9., 5., 6., 3., 6., 8., 0., 7., 9., 7., 2., 7.],
[ 1., 4., 9., 2., 2., 1., 0., 6., 2., 2., 4., 0.]
])
np.hsplit(a,3) # 将数据均匀分割成3份
[array([[ 9., 5., 6., 3.],[ 1., 4., 9., 2.]]),
array([[ 6., 8., 0., 7.],[ 2., 1., 0., 6.]]),
array([[ 9., 7., 2., 7.],[ 2., 2., 4., 0.]])]
np.hsplit(a,(3,4)) # 在指定的列位置,分割数组
[array([[ 9., 5., 6.],[ 1., 4., 9.]]),
array([[ 3.],[ 2.]]),
array([[ 6., 8., 0., 7., 9., 7., 2., 7.],
[ 2., 1., 0., 6., 2., 2., 4., 0.]])]
# 堆叠
- numpy级别的方法vstack和hstack分别在纵向和横向上堆叠数组。
注:参数以元组形式提供。
a = array([[ 8., 8.],
[ 0., 0.]])
b = array([[ 1., 8.],
[ 0., 4.]])
np.vstack((a,b))
array([[ 8., 8.],
[ 0., 0.],
[ 1., 8.],
[ 0., 4.]])
np.hstack((a,b))
array([[ 8., 8., 1., 8.],
[ 0., 0., 0., 4.]])