Как отсортировать массив в numpy по ключу?
Я пытаюсь разобраться, как работать с numpy и хочу отсортировать одномерный массив по ключу-функции, примерно так:
a = [9, 0, 3, 8, 1, 0, 0, 0]
a.sort(key=bool)
>>>[0, 0, 0, 0, 9, 3, 8, 1]
Есть ли способ подобной сортировки массива в numpy, без конвертации в обычный список и обратно.
Ответы (1 шт):
Автор решения: Кирилл Малышев
→ Ссылка
import numpy as np
a = np.array([9, 0, 3, 8, 1, 0, 0, 0])
def key(a):
return a != 0
print(a[np.argsort(key(a))])