У меня есть двумерная матрица формы (N, 2), которая удерживает N точек (координаты x и y). Например:
array([[3, 2],
[6, 2],
[3, 6],
[3, 4],
[5, 3]])
Я хотел бы отсортировать его так, чтобы мои точки упорядочивались по координате x, а затем по y в случаях, когда координата x одинакова. Итак, массив выше должен выглядеть так:
array([[3, 2],
[3, 4],
[3, 6],
[5, 3],
[6, 2]])
Если это был обычный список Python, я бы просто определил, что компаратор выполняет то, что я хочу, но, насколько я могу судить, функция сортировки numpy не принимает пользовательских компараторов. Любые идеи?
EDIT: Спасибо за идеи! Я установил быстрый тестовый пример со 1000000 случайными целыми точками и сравнил те, которые я мог запустить (извините, не может обновить numpy в данный момент).
Mine: 4.078 secs
mtrw: 7.046 secs
unutbu: 0.453 secs