У меня есть простой 2-мерный массив, который я хотел бы отсортировать по записи во 2-м столбце, и если идентичные записи существуют во 2-м столбце, то также отсортировать по 1-му столбцу и вернуть индексы этого нового массиваиз исходного массива a
.Вот отправная точка:
import numpy as np
a = np.array([[0.1,2.134],[0.2,3.02],[0.1,2.5],[0.3,2.134],[0.1,3.02]])
a
>>> array([[0.1 , 2.134],
[0.2 , 3.02 ],
[0.1 , 2.5 ],
[0.3 , 2.134],
[0.1 , 3.02 ]])
, которую я затем могу отсортировать по 2-му столбцу для получения:
b = a[a[:,1].argsort()]
b
>>> array([[0.1 , 2.134],
[0.3 , 2.134],
[0.1 , 2.5 ],
[0.2 , 3.02 ],
[0.1 , 3.02 ]])
, но я бы хотел, чтобы это дополнительно сортировалось по 1-му столбцу.Мой желаемый вывод, начиная с a
:
>>> array([[0.1 , 2.134],
[0.3 , 2.134],
[0.1 , 2.5 ],
[0.1 , 3.02 ],
[0.2 , 3.02 ]])
вместе с соответствующими индексами этого нового массива.