Using ind2sub in two different arrays

1 view (last 30 days)
Angela
Angela on 13 Sep 2018
Commented: Angela on 14 Sep 2018
I have two arrays and i want to exclude the zeros from the first array(A) and then take the equivalent indices from array B.
A=[0 1 2; 2 1 4; 0 1 5];
B=[1 2 3; 2 4 2; 2 3 5];
[X,Y]=ind2sub(size(A),find(A>0))
Anew=A(X,Y)
Bnew=B(X,Y)
The result of the above is not what i want, Anew and Bnew are now larger than before. What am i doing wrong?

Accepted Answer

Matt J
Matt J on 13 Sep 2018
Edited: Matt J on 13 Sep 2018
This is not a situation that calls for ind2sub,
idx=(A~=0);
Anew=A(idx),
Bnew=B(idx),

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!