Set Matrix Elements based on Coordinates Matrix

Hello
lets say i have a matrix C with Coordinates ... C = [2 3; 4 4];
And a matrix M = zeros(4);
Now i want to set some elements in M based on coordinates from C.
How can i do this without forloop?

 采纳的回答

You can use sub2ind to convert you coordinate array to linear indices. Then you can use normal indexing to set values.
C = [2 3; 4 4];
M=zeros(4,4);
ind=sub2ind(size(M),C(:,1),C(:,2));
M(ind)=1;
disp(M)
0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by