如果a是形状为(5,3)的numpy数组,而b是形状(2,4),那么a [b]的形状是什么?
在上式中,a [b]的真正含义是什么?是乘法吗?
答案 0 :(得分:2)
不,这根本不是任何乘法。这是高级索引。假设b
的元素是a
行中的有效索引,那么a[b]
将是形状为(2,4,3)
的3D数组。在您的示例中,这意味着b
应该是一个整数数组,其值在-5到4之间(含-4),否则索引a[b]
会引发IndexError
。结果a[b]
由a
中相应的行组成,并按深度堆叠。
numpy的此功能已记录在here中。