How to delete repeated rows without using unique function?
1 view (last 30 days)
Show older comments
I am looking for a way to delete repeated rows without using the unique function. For example if I have the matrix
A=[2 4 8; 8 2 4; 3 3 -6]
one of the first two rows needs to be deleted. Order doesn't need to be kept. I'm sure I need to use sort, and maybe find or diff. I'm not exactly sure how to go about it.
Any and all help is appreciated!
4 Comments
Matt Kindig
on 23 Apr 2013
It's strange that you consider the first two rows of A to be "repeated", since the order of the elements is different (one is a permutation of the other). Is this what you want?
Answers (1)
Matt J
on 23 Apr 2013
Edited: Matt J
on 23 Apr 2013
Hint:
>> sortrows(sort(A,2))
ans =
-6 3 3
2 4 8
2 4 8
You should now find diff() rather helpful.
2 Comments
Cedric
on 23 Apr 2013
Lookup ALL and ANY in the doc; you could probably use them at some point, and be aware that ALL, ANY, DIFF, and many others operate along a dimension that you can specify.
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!