- 通过打印numpy数组的shape属性,可以查看其数据的结构特点。shape形如(n,)的numpy数组定义为一维数组,形如(n,m)定义为二维数组,即一个n行m列的矩阵。以此类推延申到多维数组的shape。
- 为了能更好地对多维数组进行操作处理,numpy引用了axis轴的概念,它与shape维度的对应关系如下图所示,
axis=-1永远指向数组的最后一维。
以三维numpy数组为例,
a = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])
b = np.array([[[9, 10], [11, 12]], [[9, 10], [11, 12]]])
print(np.concatenate((a, b), axis=-1))
[[[ 1 2 9 10]
[ 3 4 11 12]]
[[ 5 6 9 10]
[ 7 8 11 12]]]
print(np.concatenate((a, b), axis=0))
[[[ 1 2]
[ 3 4]]
[[ 5 6]
[ 7 8]]
[[ 9 10]
[11 12]]
[[ 9 10]
[11 12]]]
print(np.concatenate((a, b), axis=1))
[[[ 1 2]
[ 3 4]
[ 9 10]
[11 12]]
[[ 5 6]
[ 7 8]
[ 9 10]
[11 12]]]