我在StackOverflow
上查了几个问题,但没有找到相应的答案。我想从a numpy
ndarray
获取k个最大值的索引。This link讨论的是相同的,但对于1D数组。^二维数组的{
Note: array elements are not unique.
输入:
^{pr2}$还有
import numpy as np
n = np.arange(9).reshape(3,3)
s = n.argsort(axis=None)
>>>s
array([0, 1, 2, 3, 4, 5, 6, 7, 8], dtype=int32)
但我在这里失去了数组结构,无法赎回元素的原始索引。在
任何帮助都是感激的。在
使用^{} 和{a2}对ndarrays-
用
argpartition
讨论两个版本k_largest_index_argpartition_v1
和{argparition
。在第一个版本中,我们对输入数组求反,然后使用argpartition
来获得最小的k
索引的索引,从而有效地得到最大的索引,而在第二个版本中,我们得到了第一个最小的索引,然后选择剩下的最大的索引。在另外,这里值得一提的是,使用} 所述。在
argpartition
,我们没有按排序顺序得到索引。如果需要排序顺序,我们需要向np.argpartition
提供范围数组,如^{样本运行-
1)二维盒:
^{pr2}$2)3D案例:
运行时测试-
相关问题 更多 >
编程相关推荐