How to map a value of a vector into column number of a matrix?
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
let A=[2;4;5] vector I want a matrix where all the values will be zero and the 2nd 4th and 5th element of column of 10x3 matrix will be 1.
B=[0 0 0
1 0 0
0 0 0
0 1 0
0 0 1
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0 ]
0 commentaires
Réponse acceptée
Jan
le 31 Jan 2018
A = [2, 4, 5];
B = zeros(10, 3);
idx = sub2ind(size(B), A, 1:3);
B(idx) = 1;
4 commentaires
Plus de réponses (2)
Jos (10584)
le 1 Fév 2018
A fast and easy one-liner from the old days, when accumarray did not exist :)
A = [2 ; 4 ; 5]
B = full(sparse(A, 1:numel(A), 1, 10, 3))
0 commentaires
Voir également
Catégories
En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!