easy n-best via numpy


>>> a
array([9, 4, 4, 3, 3, 9, 0, 4, 6, 0])
>>> ind = np.argpartition(a, -4)[-4:]
>>> ind
array([1, 5, 8, 0])
>>> a[ind]
array([4, 9, 6, 9])

argpartition便利。

(ranked) n-bestが必要な場合は追加で
>>> ind[np.argsort(a[ind])]
array([1, 8, 5, 0])
すれば良い。


タグ:

numpy pyyhon
最終更新:2017年01月07日 07:52