numpy中数组之 “ 扩展数组的形状 ”(expand_dims)
import numpy as np
x = np.array(([1, 2], [3, 4]))
print('数组 x:')
print(x)
print('在位置0插入轴之后的数组y:')
y = np.expand_dims(x, axis=0)
print(y)
print('数组 x 和 y 的形状:')
print(x.shape, y.shape)
print('\n')
print('在位置1插入轴之后的数组y:')
y = np.expand_dims(x, axis=1)
print(y)
print('数组 x 和 y 的形状:')
print(x.shape, y.shape)
print('\n')
print('在位置2插入轴之后的数组y:')
y = np.expand_dims(x, axis=2)
print(y)
print('数组 x 和 y 的形状:')
print(x.shape, y.shape)
print('\n')
输出结果:
数组 x:
[[1 2]
[3 4]]
在位置0插入轴之后的数组y:
[[[1 2]
[3 4]]]
数组 x 和 y 的形状:
(2, 2) (1, 2, 2)
在位置1插入轴之后的数组y:
[[[1 2]]
[[3 4]]]
数组 x 和 y 的形状:
(2, 2) (2, 1, 2)
在位置2插入轴之后的数组y:
[[[1]
[2]]
[[3]
[4]]]
数组 x 和 y 的形状:
(2, 2) (2, 2, 1)
可以看出插入位置为0时,数组的形状改变为第一个数字。插入位置为1时,数组的形状改变为第二个数字。相应的数组的中括号也按这个规律添加