How to flip values greater than zero in a row
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Tanmoyee Bhattacharya
am 16 Apr. 2018
Bearbeitet: Stephen23
am 16 Apr. 2018
If I have a row in matrix like that
0 0 0 0 1 2 3 0 0 0
I want to make it like that
0 0 0 0 0 0 3 2 1 0
If it is possible to do?
1 Kommentar
Stephen23
am 16 Apr. 2018
@Tanmoyee Bhattacharya: the numbers a not only flipped L-R, but have been translated too. How is the new position determined?
Akzeptierte Antwort
Birdman
am 16 Apr. 2018
Try this:
A=[0 0 0 0 1 2 3 0 0 0] idx=find(A~=0); A(idx+nnz(A)-1)=fliplr(A(idx)); A(idx(1:end-1))=0
1 Kommentar
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Argument Definitions finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!