2010-08-16 59 views
1

我想從numpy數組中的每一行檢索k最大值。我一直在挖掘文檔,但找不到答案(我可能在錯誤的地方查找)。有沒有人有一個簡單的代碼片段來做到這一點?Numpy:如何從每一行檢索k最大值?

感謝這麼多,

Diederik

+1

也許我忽視的東西,但不會一個簡單的排序和下面的切片就足夠了? – Wolph 2010-08-16 21:45:03

+0

是的,沒有想到(我知道我忽略了一些東西:)),如果你把它作爲答案發布,那麼我會給你信用。 – DrDee 2010-08-16 21:47:23

回答

1

這裏有一個簡單的解決方案:

some_array = numpy.random.randint(0, 10, 10) 
top_items = numpy.sort(some_array)[-k:] 

或者作爲拉姆達:

max_values = lambda k, array: numpy.sort(array)[-k:] 
+0

不應該是'np.sort(some_array)[:, - k:]'? – 2012-08-25 14:58:58

相關問題