当前位置: 移动技术网 > IT编程>脚本编程>Python > Numpy 中数组的分割问题解析

Numpy 中数组的分割问题解析

2018年04月02日  | 移动技术网IT编程  | 我要评论

beyond2003北京演唱会,寿县人民政府网,刘欣美

Numpy 中数组的分割问题解析。 下面要介绍的数组分割方法有:

水平分割垂直分割深度分割

? ? 0. 创建一个数组

a = arange(9).reshape(3,3)
print(a)

? ? 1. 水平分割

????下面的代码将把数组沿着水平方向分割为3个相同大小的子数组:

b = hsplit(a,3)
print(b)

? ? 或者调用split函数并在参数中指定参数axis=1

b = split(a, 3, axis=1)
print(b)????

? ? 得到结果

[array([[0],
       [3],
       [6]]),
 array([[1],
       [4],
       [7]]), 
 array([[2],
       [5],
       [8]])]

? ? 2.垂直分割

? ? 下面的代码将把数组沿着垂直方向分割为3个相同大小的子数组:

 

b = vsplit(a,3)
print(b)

? ? 或者调用split函数并在参数中指定参数axis=1

b = split(a, 3, axis=0)
print(b)???

? ? 得到结果

[array([[0, 1, 2]]), array([[3, 4, 5]]), array([[6, 7, 8]])]

? ? 3.深度分割

? ? 先创建一个三维数组:

a = arange(27).reshape(3,3,3)
print(a)
[[[ 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]]]

? ? 调用dsplit函数按深度方向分割数组

b = dsplit(a,3)
print(b)

? ? 得到结果

[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]]])]

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网