NumPy数组可以进行水平、垂直或深度分割,相关的函数有hsplit、vsplit、dsplit和split。我们可以将数组分割成相同大小的字数组,也可以指定原数组中需要分割的位置。
一、水平分割(hsplit):
1、水平分割:
即把数组沿着水平方向分割。
2、实例:
a = arange(9).reshape(3,3)
print(a)
b = hsplit(a,3)
print(b[0])
print(b[1])
print(b[2])
输出结果:
[[0 1 2]
[3 4 5]
[6 7 8]]
[[0]
[3]
[6]]
[[1]
[4]
[7]]
[[2]
[5]
[8]]
二、垂直分割(vsplit):
1、垂直分割:
即把数组沿着垂直方向分割。
2、实例:
a = arange(9).reshape(3,3)
print(a)
c = vsplit(a,3)
print(c[0])
print(c[1])
print(c[2])
输出结果:
[[0 1 2]
[3 4 5]
[6 7 8]]
[[0 1 2]]
[[3 4 5]]
[[6 7 8]]
三、深度分割(dsplit):
1、深度分割:
即把数组按深度方向分割。
2、实例:
a = arange(27).reshape(3,3,3)
print(a)
b = dsplit(a,3)
print(b)
输出结果:
[[[ 0 1 2]
[ 3 4 5]
[ 6 7 8]]
[[ 9 10 11]
[12 13 14]
[15 16 17]]
[[18 19 20]
[21 22 23]
[24 25 26]]]
[array([[[ 0],
[ 3],
[ 6]],
[[ 9],
[12],
[15]],
[[18],
[21],
[24]]]), array([[[ 1],
[ 4],
[ 7]],
[[10],
[13],
[16]],
[[19],
[22],
[25]]]), array([[[ 2],
[ 5],
[ 8]],
[[11],
[14],
[17]],
[[20],
[23],
[26]]])]