[SciPy-User] get best few of many: argsort( few= ) using std::partial_sort ?
Thu Jul 8 12:17:51 CDT 2010
to get the best few of a large number of objects,
e.g. vectors near a given one, or small distances in
spatial.distance.cdist or .pdist,
argsort( bigArray )[: a few ] is not so hot. It would be nice if
argsort( bigArray, few= )
did this -- faster, save mem too. Would anyone else find this useful ?
I recently stumbled across partial_sort in stl; fwiw,
std:partial_sort( A, A + sqrt(N), A + N ) is ~ 10 times faster than
on my old mac ppc, even for N 100.
Also fwiw, nth_element alone is ~ twice as slow as partial_sort --
More information about the SciPy-User