Есть ли способ изменить порядок столбцов в двумерном массиве numpy на новый и произвольный порядок? Например, у меня есть массив
array([[10, 20, 30, 40, 50],
[ 6, 7, 8, 9, 10]])
и я хочу изменить его, скажем
array([[10, 30, 50, 40, 20],
[ 6, 8, 10, 9, 7]])
применяя перестановку
0 -> 0
1 -> 4
2 -> 1
3 -> 3
4 -> 2
в столбцах. Поэтому в новой матрице я хочу, чтобы первый столбец оригинала оставался на месте, второй - для перехода к последнему столбцу и т.д.
Есть ли функция numpy для этого? Я имею довольно большую матрицу и ожидаю получить еще большие, поэтому мне нужно решение, которое делает это быстро и на месте, если это возможно (матрицы перестановок - нет-go)
Спасибо.