Есть ли способ векторизации этого кода Matlab / Octave - PullRequest
0 голосов
/ 05 октября 2018
Y=zeros(length (y),10)
for c=1:length(y)
Y(c,y(c))=1
end

Где y - вектор-столбец, содержащий целые числа от 1 до 10

1 Ответ

0 голосов
/ 05 октября 2018

Используйте линейные индексы:

Y=zeros(length (y),10)
c=1:length(y)
indices=sub2ind(size(Y),c.',y(c));
Y(indices)=1;
...