Content #
newaxis对象会将选择的结果扩展一维(one unit-length dimension),新加的维度即在newaxis对象所在的位置。
>>> x = np.array([[[1],[2],[3]], [[4],[5],[6]]])
>>> x.shape
(2, 3, 1)
>>> x[:, np.newaxis, :, :].shape
(2, 1, 3, 1)
newaxis在此外只是None的别名。
newaxis很适合在合并两个数组时使用。
>>> x = np.arange(5)
>>> x[:, np.newaxis] + x[np.newaxis, :]
array([[0, 1, 2, 3, 4],
[1, 2, 3, 4, 5],
[2, 3, 4, 5, 6],
[3, 4, 5, 6, 7],
[4, 5, 6, 7, 8]])