Find unique number sets

4 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

Categories

Find more on Creating and Concatenating 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!