У нас есть основной массив с именем main_arr, и мы хотим снова преобразовать его в другой массив с именем result того же размера, используя guide_arr. с таким же размером:
import numpy as np
main_arr = np.array([[3, 7, 4], [2, 5, 6]])
guide_arr = np.array([[2, 0, 1], [0, 2, 1]])
result = np.zeros(main_arr.shape)
нам нужно, чтобы результат был равен:
if np.array_equal(result, np.array([[7, 4, 3], [2, 6, 5]])):
print('success!')
Как мы должны использовать guide_arr?
guide_arr[0,0] равно 2, что означает, что result[0,2] = main_arr[0,0]
guide_arr[0, 1] равен 0, что означает, что result[0, 0] = main_arr[0, 1]
guide_arr[0, 2] равно 1, что означает, что result[0, 1] = main_arr[0,2]
То же самое касается 1 ряда.
Таким образом, элементы в main_arr должны быть переупорядочены (внутри строки строка никогда не меняется), чтобы их новый индекс столбца равнялся числу в guide_arr.