Юля новичок здесь. Мне нужно так немного подтасовать пару матриц. Моя цель такова:
Для определенной матрицы Matrix1 как:
![enter image description here](https://i.stack.imgur.com/BhpFM.png)
и двоичной матрицы Matrix2 как это:
![enter image description here](https://i.stack.imgur.com/67QSw.png)
, я хочу выделить элементы из Matrix1 в Matrix2 так, чтобы у меня была окончательная матрица Matrix3, которая выглядит так:
![enter image description here](https://i.stack.imgur.com/QgUW5.png)
В Python сработал следующий лайнер:
Matrix3= Matrix1.flatten()[(np.cumsum(Matrix2).reshape(Matrix2.shape)-1)] * Matrix2
Может ли кто-нибудь помочь мне в написании аналогичной статьи кода (желательно с одним лайнером) в Юлии?
Расширение - я получил ответ на вышеуказанный вопрос от @cbk. Как продолжение вопроса выше. Я думал об обобщении его для матриц более высокой размерности. Итак, предположим, что матрица Matrix1 имеет размерность (4,6,6), а двоичная матрица Matrix2 имеет размерность (4,12,12). Проблема распределения остается прежней. Как тогда вы подойдете к этому? Может ли кто-нибудь помочь мне в этом?