У меня есть матрица 6X4 M1
, содержащая только нули. У меня также есть два массива 1D Y1
и Y2
каждый с длиной 4. Два массива содержат требуемые значения индекса. Теперь я хочу, чтобы установить (преобразовать в 1) элементы матрицы M1
таким образом, что M1(Y1:Y2)
равно 1Индексирование 2D-массива в matlab
для бывших: Y1=[1 2 2 1]
и Y2=[3 4 5 3]
тогда, M1
должен быть
1 0 0 1
1 1 1 1
1 1 1 1
0 1 1 0
0 0 1 0
0 0 0 0
я могу сделайте это, используя для цикла. Но есть ли оптимизированный способ сделать это? (Я намерен использовать гораздо большие матрицы)
большое использование 'bsxfun' - но вы можете сделать это без использования' offsets' – Shai
@shai Существует еще ошибка, я фиксируя Это. –
ответ на мой вопрос можно найти, если вы наведите указатель на нижнюю часть моего ответа ;-) – Shai