How to find unique rows with unordered elements?

7 views (last 30 days)
Say I have the following matrix:
>> A = [1 2 3; 2 4 6; 3 1 2; 1 1 1]
A =
1 2 3
2 4 6
3 1 2
1 1 1
How can I identify the unique rows where I don't care what order the row elements are in? For example, in this case row 1 is equivalent to row 3 because both contain the elements 1, 2, and 3, the only difference is their order. So the unique rows would be A([1,2,4],:).

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 13 Jan 2014
Edited: Azzi Abdelmalek on 13 Jan 2014
A = [1 2 3; 2 4 6; 3 1 2; 1 1 1]
[idx,idx]=unique(sort(A')','rows','stable');
B=A(idx,:)

More Answers (0)

Categories

Find more on Shifting and Sorting Matrices in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!