一.数组维度
观察外层共几个括号,几个括号几维:
[1,2,3]:一维数组
[ [1,2,3] , [4,5,6] ]:二维数组
[ [ [1,2] , [3,4] ] , [ [5,6] , [7,8] ] ]:三维数组
二.各维度对应数值
如下图三维数组,从一维有几个元素开始确定其shape,是一个从外向内拆括号的过程。首先,最外层的括号表示第一维,此例中第一维有三个元素,分别为
[[1,1,1,1],[2,2,2,2]]、[[3,3,3,3],[4,4,4,4]]、[[5,5,5,5],[6,6,6,6]];
然后,确定第二维,即这三个元素各有几个元素,各有两个元素,如对[[1,1,1,1],[2,2,2,2]]来说,两个元素为[1,1,1,1]和[2,2,2,2];
最后,确定第三维,即最内层括号有几个元素,即[1,1,1,1]、[2,2,2,2]、[3,3,3,3]各有四个元素,确定第三维为四。
import numpy as np
a=np.array([[[1,1,1,1],[2,2,2,2]],[[3,3,3,3],[4,4,4,4]],[[5,5,5,5],[6,6,6,6]]])
print(a)
'''[[[1 1 1 1]
[2 2 2 2]]
[[3 3 3 3]
[4 4 4 4]]
[[5 5 5 5]
[6 6 6 6]]]'''
print(a.shape)
#(3, 2, 4)
其他维度数组同理。如下图为shape为(1,2,3,4)的四维数组
b=np.random.randint(10,size=(1,2,3,4))
print(b)
'''
[[[[4 9 7 1]
[0 0 8 6]
[3 7 5 8]]
[[6 1 3 9]
[3 8 4 1]
[4 0 2 8]]]]
'''
print(b.shape)
#(1, 2, 3, 4)
shape为(3,4)的二维数组
c=np.random.randint(10,size=(3,4))
print(c)
'''
[[6 9 2 5]
[0 8 5 1]
[4 1 7 9]]
'''
print(c.shape)
#(3, 4)