为什么np.newaxis
始终将轴放在我放置的位置?见例:
import numpy as np
M = np.array([[1,4],[2,5], [3,4]])
M[:,np.newaxis].shape
# returns (3, 1, 2)
答案 0 :(得分:2)
根据描述newaxis
的{{3}}:
添加的维度是newaxis对象在选择元组中的位置。
在您的示例中,newaxis
位于元组的第二个位置,因此在那里插入了长度为1的新维度。
这类似于选择特定索引处的值。对于三维A
,您可以使用A[:,0]
从第二个轴而不是第三个轴检索索引0
值。
如果要在元组的最后位置添加新轴,可以编写M[:,:,np.newaxis]
或者使用省略号表示法:
>>> M[...,np.newaxis].shape
(3, 2, 1)