我想我正确理解python/numpy中数组的索引。但今天我遇到了一个问题,如下所示:python numpy数组索引
我有一个6维阵列,例如A
和A.shape = (11,1,9,1,5,7)
。 然后,我使用索引如下:
B = A[:,0,0,0,[3,4,2],0]
B.shape = (11,3)
和如预期;
C = A[:,0,0,0,[3,4,2],:]
and C.shape = (11,3,7)
as expected;
但是,当我说:
D = A[:,0,:,0,[3,4,2],0]
和D.shape
应(11,9,3)
我可以期待,不过,蟒蛇返回D.shape = (3, 11, 9)
。
而我对数组D
的形状非常困惑。
有没有人可以给我一个简短的解释? 非常感谢!
有大约混合片,并列出了'基本与advanced'索引文档的部分。有一些不明确的地方,'numpy'选择将切片尺寸放在最后。在以前的SO问题中也讨论过这种行为。 – hpaulj
[Explain slice notation]的可能重复(https://stackoverflow.com/questions/509211/explain-slice-notation) – polka
不,这不仅仅是一个普通的切片问题。这是更微妙的东西。 – hpaulj