假设我有一个要查找元素的向量:
a = np.array([1, 5, 9, 7])
现在,我有了一个应在其中搜索这些元素的矩阵:
M = np.array([
[0, 1, 9],
[5, 3, 8],
[3, 9, 0],
[0, 1, 7]
])
现在,我想获得在该行的列索引阵列中告诉Ĵ的M
元素Ĵ的a
发生。
结果将是:
[1, 0, 1, 2]
Numpy是否提供这样的功能?
(感谢您提供列表理解的答案,但这不是性能的选择。我也很抱歉在最后一个问题中提到Numpy。)
注意以下结果:
M == a[:, None]
>>> array([[False, True, False],
[ True, False, False],
[False, True, False],
[False, False, True]], dtype=bool)
可以使用以下方法检索索引:
yind, xind = numpy.where(M == a[:, None])
>>> (array([0, 1, 2, 3], dtype=int64), array([1, 0, 1, 2], dtype=int64))
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句