问题描述
我想使用大小为 2 的一1d-array
来索引我的2d-array
1d-array
,就像使用元组或基本索引一样。
为了方便操作,我将索引作为np.ndarrays
,但目前我正在将它们来回转换为元组。
a = np.zeros((5, 5))
ix = np.array([3, 2])
>>> a[3, 2]
0.0
>>> a[(3, 2)]
0.0
>>> a[ix]
array([[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.]])
我已经尝试通过多种方式对数组进行整形,例如形状(2, 1)
和(1, 2)
,但没有运气。
也无法从找到条目。
有办法吗?
1楼
将ix
作为用于索引的元组传递,而不是数组/列表,因为后者将指定行的选择,而不是单个单元格。
所以a[tuple(ix)]
或a[(*ix,)]
都可以。