• A convenient way to recognize and handwrite multidimensional arrays in Numpy


    As a new learner of Numpy, it is very common to be confused by the form of array, braces nested in braces, such as ‘a= np.array[[[1],[2],[3]]]’ so that its shape cannot be precisely known by the users, although the shape can be fetched through ‘a.shape’, making users unable to perform multidimensional array correctly.

    The method is as the following:(1)every array needs a most out brace.(2) Go inner, the number of paired brace is the element number of 0 axis, 1 axis, 2 axis etc.(3) The dimension number increased along with the going-inner, until the number element is reached, the sum of levels is the dimensional number.

    For example:

    >>> import numpy as np
    >>> data=np.arange(4)
    >>> data1=data.reshape((4,1))
    >>> data2=data.reshape((1,4))
    >>> data3=data.reshape((2,2))
    >>> data4=data.reshape((1,2,2))
    >>> data5=data.reshape((2,1,2))
    >>> data6=data.reshape((2,2,1))
    >>> data
    array([0, 1, 2, 3])
    >>> data1
    array([[0],
           [1],
           [2],
           [3]])
    >>> data2
    array([[0, 1, 2, 3]])
    >>> data3
    array([[0, 1],
           [2, 3]])
    >>> data4
    array([[[0, 1],
            [2, 3]]])
    >>> data5
    array([[[0, 1]],
    
           [[2, 3]]])
    >>> data6
    array([[[0],
            [1]],
    
           [[2],
            [3]]])

    ①data1's shape is (4,1),so firstly, the most out brace pair shall be set-->[ ], and then 0 axis is 4, meaning 4 pairs of brace inside -->[ [ ],[ ],[ ],[ ] ] ,finally, 1 axis is 1,and is the final dimension, meaning 1 number element shall be inside-->[ [0],[1],[2],[3]].

    ② data2's shape is (1,4), firstly-->[ ], then -->[ [ ] ], finally -->[ [ 0,1,2,3] ]

    ③ data3's shape is (2,2), firstly-->[ ] ,then--> [ [ ], [ ] ], finally-->[ [0,1], [2,3] ]

    ④data4' shape is (1,2,2), firstly-->[ ] ,then-->[ [ ] ], then--> [ [ [ ], [ ] ] ], finally--> [ [ [ 0,1], [2,3 ] ] ]

    ⑤data5's shape is (2,1,2),firstly--> [ ],then-->[ [ ],[ ] ], then-->[ [ [ ] ], [ [ ] ] ], finally --> [ [ [ 0,1],[ [ 2,3] ] ]

    ⑥data6's shape is (2,2,1),firstly-->[ ],then --> [ [ ] ,[ ] ],then-->[ [ [ ], [ ] ], [ [ ] , [ ] ] ],finally-->[ [ [ 0],[1] ], [ [2],[3] ] ]

    ##### 愿你一寸一寸地攻城略地,一点一点地焕然一新 #####
  • 相关阅读:
    链式栈的C++实现
    Java面试之设计模式二
    前端资源
    Java面试之异常
    Java面试之序列化
    Java面试之重写(Override)与重载(Overload)
    项目视图展示
    Java面试之集合
    Java面试之SSH框架面试题集锦
    JDBC技术
  • 原文地址:https://www.cnblogs.com/johnyang/p/11819433.html
Copyright © 2020-2023  润新知