Преобразовать целое число в логический массив в MATLAB
Я хочу конвертировать целое числоi
к логическому вектору с i-м ненулевым элементом. Это может быть сделано с1:10 == 2
, который возвращает
0 1 0 0 0 0 0 0 0 0
Теперь я хочу векторизовать этот процесс для каждой строки. Пишуrepmat(1:10, 2, 1) == [2 5]'
Я ожидаю получить
0 1 0 0 0 0 0 0 0 0
0 0 0 0 1 0 0 0 0 0
Но вместо этого эта ошибка происходит:
Ошибка при использовании ==
Размеры матрицы должны совпадать.
Могу ли я векторизовать этот процесс, илиfor
цикл единственный вариант?