eliminate zero elements and separate into different matrix
10 views (last 30 days)
Show older comments
weifeng wang
on 17 Jul 2016
Commented: weifeng wang
on 17 Jul 2016
if i have a matrix like [0 0 0 0 1 2 3 0 0 3 2 0 0 0 3 4 4 5 0],how can I get three matrix [1 2 3];[3 2] and [3 4 4 5].
0 Comments
Accepted Answer
Azzi Abdelmalek
on 17 Jul 2016
A=[0 0 0 0 1 2 3 0 0 3 2 0 0 0 3 4 4 5 0]
idx=A~=0
ii1=strfind([0 idx],[0 1])
ii2=strfind([idx 0],[1 0])
out=arrayfun(@(x,y) A(x:y),ii1,ii2,'un',0)
celldisp(out)
3 Comments
Azzi Abdelmalek
on 17 Jul 2016
You can do it with any array supported by Matlab, but your figure doesn't show a matrix!
More Answers (0)
See Also
Categories
Find more on Resizing and Reshaping Matrices 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!