numpy 可以计算多维数组中 N 个最大的元素吗? 说:
import numpy as np
a=[1,2,3]
b=a.max(num_of_max_elements=2) #I know it won't work, and I want it to be 2 and 3
请您参考如下方法:
最简单的方法是排序,然后使用最后的 n 个数字。这也可以在不更改原始数组的情况下完成。以下是如何在 10x10 数组中查找最大的 10 个数字的示例:
a = numpy.random.randint(1000, size=100).reshape(10, 10)
indices = a.ravel().argsort()
print a.ravel()[indices[-10:]]
这段代码打印出类似的东西
array([909, 917, 926, 936, 952, 960, 961, 964, 969, 993])
