У меня есть массив с формой (9099, 2, 26).
Из этого массива я хотел бы получить новый с формой (9099, 2, 1), где значение для 3-го измерения будет определено другим массивом 1d (9099,).Этот 1-й массив каждого значения на самом деле является индексом необходимого значения 3-го измерения в моем основном массиве.
Так, например, 9-й элемент моего основного массива выглядит так:
In [1]: a[9,:,:]
Out [1]: array([[ 0, 1011165, 1098400, 1140065, 1172240, 1203971, 1439189,
1600540, 2281575, 8888888, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0],
[ 280000, 263998, 974020, 653653, 888965, 851341, 466195,
424801, 0, 9999999, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0]])
Девятый элемент массива 1d:
In [2]: b[9]
Out [2]: 9
Таким образом, 10-й элемент требуемого вывода должен выглядеть следующим образом:
In [3]: c[9,:,:]
Out [3]: array([[8888888], [9999999]])
Я полагаю, это должно быть как-то сделано с необычной индексацией?
Спасибо!