Selecting multiple array elements
3 views (last 30 days)
Show older comments
Hi.
n = 10;
A = rand(n);
B = A;
k = [1 1; 2 3; 4 5; 1 8; 8 6];
A(k(1,1),k(1,2))= 1;
A(k(2,1),k(2,2))= 1;
A(k(3,1),k(3,2))= 1;
A(k(4,1),k(4,2))= 1;
A(k(5,1),k(5,2))= 1;
B(k(:,1),k(:,2))=1;
isequal(A,B)
How can I assign a value of 1 to elements from array B with coordinates k using a single command?
0 Comments
Accepted Answer
Fangjun Jiang
on 5 Jul 2022
Edited: Fangjun Jiang
on 5 Jul 2022
n = 10;
A = zeros(n);
B = A;
k = [1 1; 2 3; 4 5; 1 8; 8 6];
A(k(1,1),k(1,2))= 1;
A(k(2,1),k(2,2))= 1;
A(k(3,1),k(3,2))= 1;
A(k(4,1),k(4,2))= 1;
A(k(5,1),k(5,2))= 1
B(sub2ind(size(A),k(:,1),k(:,2)))=1
isequal(A,B)
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!