Matrix indexing using a vector
Afficher commentaires plus anciens
Let's say I have a vector b where each row correspond to an index for each row in the matrix A. I want to assign 1 to these elements, like in the matrix C, without loops. Thank you
A = zeros(4,3);
b = [2;1;2;3];
C = [0 1 0; 1 0 0; 0 1 0; 0 0 1]
Réponse acceptée
Plus de réponses (1)
Andrei Bobrov
le 30 Mai 2016
C = accumarray([(1:numel(b))' b],1)
Catégories
En savoir plus sur Matrix Indexing dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!