Как инвертировать массив перестановок в numpy
С учетом самоиндексирования (не уверен, что это правильный термин) массива numpy, например:
a = np.array([3, 2, 0, 1])
Это представляет этоперестановка (=>
это стрелка):
0 => 3
1 => 2
2 => 0
3 => 1
Я пытаюсь создать массив, представляющий обратное преобразование, не делая этого "вручную". в питоне, то есть я хочуpure тупое решение. Результат, который я хочу в приведенном выше случае:
array([2, 3, 1, 0])
Что эквивалентно
0 <= 3 0 => 2
1 <= 2 or 1 => 3
2 <= 0 2 => 1
3 <= 1 3 => 0
Это кажется таким простым, но я просто не могу придумать, как это сделать. Я пробовал поискать в Google, но не нашел ничего подходящего.