On Fri, Oct 20, 2017 at 1:40 PM, Joseph Fox-Rabinovitz <
jfoxrabinov...@gmail.com> wrote:
> I do not think that there is any particular relationship between the
> order of the keys and lexicographic order. The key order is just a
> convention, which is clearly documented. I agree that it is a bit
I do not think that there is any particular relationship between the
order of the keys and lexicographic order. The key order is just a
convention, which is clearly documented. I agree that it is a bit
counter-intuitive for anyone that has used excel or MATLAB, but it is
ingrained in the API at
Thank you Josef, you gave me an idea, and now the fastest version (for big
arrays) on my laptop is:
np.lexsort(arr[:, ::-1].T)
For me the most strange thing is the order of keys, what was an idea to
keep then right-to-left? How does this relate to lexicographic order*?*
2017-10-20 17:11
There are two mistakes in your PS. The immediate error comes from the
fact that lexsort accepts an iterable of 1D arrays, so when you pass
in arr as the argument, it is treated as an iterable over the rows,
each of which is 1D. 1D arrays do not have an axis=1. You actually
want to iterate over the
Hi,
I was trying to sort an array (N, 3) by rows, and firstly come with this
solution:
N = 100
arr = np.random.randint(-100, 100, size=(N, 3))
dt = np.dtype([('x', int),('y', int),('z', int)])
*arr.view(dtype=dt).sort(axis=0)*
Then I found another way using lexsort function
*:*
*idx =