#python #numpy
Вопрос:
Например, у меня есть:
arr = np.array[[10 30 20],
[30 20 10]]
indices = np.array[[2 1 0],
[2 1 0]]
Я хочу:
[[20 30 10],
[10 20 30]]
Большое вам спасибо!!
Ответ №1:
Используйте np.take_along_axis
:
import numpy as np
arr = np.array([[10, 30, 20],
[30, 20, 10]])
indices = np.array([[2, 1, 0],
[2, 1, 0]])
res = np.take_along_axis(arr, indices, axis=1)
print(res)
Вывод
[[20 30 10]
[10 20 30]]