How do I form a matrix from an array of rows and columns

1 view (last 30 days)
A=ones(10)
a=[1 3 5 6 9]
b=[1 2 4 7 9]
A(a,b)=0 should provide A(1,1)=0 A(3,2)=0 A(5,4)=0 A(6,7)=0 A(9,9)=0

Accepted Answer

Chunru
Chunru on 19 Nov 2023
A=ones(10);
a=[1 3 5 6 9];
b=[1 2 4 7 9];
A(sub2ind(size(A), a,b)) = 0;
A
A = 10×10
0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1

More Answers (1)

madhan ravi
madhan ravi on 19 Nov 2023
A(a + (b-1)*size(A,1)) = 0
  1 Comment
madhan ravi
madhan ravi on 19 Nov 2023
Edited: madhan ravi on 19 Nov 2023
A=ones(10);
a=[1 3 5 6 9];
b=[1 2 4 7 9];
A(a + (b-1)*size(A,1)) = 0
A = 10×10
0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1

Sign in to comment.

Categories

Find more on Multidimensional Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!