Find unique number sets

8 views (last 30 days)
Joseph Angelo
Joseph Angelo on 4 Aug 2022
Edited: Les Beckham on 4 Aug 2022
Given a 2D matrix, I'd like to find the number of rows with unique sets of numbers. For example:
A = [1 4;
2 3;
3 2;
1 4];
The "unique sets" matrix return should be:
B = [1 4;
2 3];
and the indices of these should be
iA = [1 2];
Using unique(A,'rows') sees [2 3] and [3 2] as unique, but I want to consider them as non-unique.

Accepted Answer

Matt J
Matt J on 4 Aug 2022
Edited: Matt J on 4 Aug 2022
A = [1 4;
2 3;
3 2;
1 4];
[B,iA]=unique(sort(A,2),'rows')
B = 2×2
1 4 2 3
iA = 2×1
1 2

More Answers (1)

Les Beckham
Les Beckham on 4 Aug 2022
Edited: Les Beckham on 4 Aug 2022
A = [1 4;
2 3;
3 2;
1 4];
B = unique(sort(A, 2), 'rows')
ans = 2×2
1 4 2 3

Community Treasure Hunt

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

Start Hunting!