Remove rows/columns with same elements

17 views (last 30 days)
Hi,
Is there a easy way to remove rows with same elements in a 2D matrix. For example, i have a matrix A = [1 2; 2 3; 1 2; 3 4; 2 1]
The 'unique' command doesn't help as it will give you the output [1 2; 2 3; 3 4; 2 1]. It's not deleting the last row [2 1] which has the same element as first row.
But i want the output like this [1 2; 2 3; 3 4].
Thanks,
Asad

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 17 Nov 2020
[~,i] = unique(sort(A,2),'first','rows');
out = A(i,:);

More Answers (1)

Timo Dietz
Timo Dietz on 17 Nov 2020
unique(sort(A, 2), 'rows')

Tags

Community Treasure Hunt

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

Start Hunting!