Deleting duplicate rows and keeping zero rows?
1 view (last 30 days)
Show older comments
Hi! I need a help!
A=[1 2;
3 4;
0 0;
1 2;
5 6;
0 0]
How can i delete duplicate rows, without deleting zero rows? I want my new matrix to look like that:
A=[1 2;
3 4;
0 0;
5 6;
0 0]
Thank you very much! ;)
0 Comments
Accepted Answer
More Answers (1)
the cyclist
on 28 Jan 2016
Here is another way.
zeroRowIndex = find(~any(A,2)); % Rows with all zeros
[~,uniqueRowIndex] = unique(A,'rows'); % Unique rows (including all-zero rows)
rowsToKeep = union(uniqueRowIndex,zeroRowIndex); % Combine the criteria. [union will discard duplicates by default]
B = A(rowsToKeep,:); % Output
See Also
Categories
Find more on Matrix Indexing 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!