Borrar filtros
Borrar filtros

How to identify the repeated elements in an array and delete those rows?

2 visualizaciones (últimos 30 días)
I have a matrix array like this:
1 100
2 200
3 200
4 200
5 500
And I want to identify the repeated elements on the right column, and delete the entire row of the matrix, to get something like this:
1 100
2 200
5 500
How can I do that?

Respuestas (2)

the cyclist
the cyclist el 9 de Abr. de 2023
Editada: the cyclist el 9 de Abr. de 2023
Here is one way:
M = [1 100;
2 200;
3 200;
4 200;
5 500];
[~,j] = unique(M(:,2));
out = M(j,:)
out = 3×2
1 100 2 200 5 500

Star Strider
Star Strider el 9 de Abr. de 2023
Use unique
A = [1 100
2 200
3 200
4 200
5 500];
[Au,ix] = unique(A(:,2),'stable');
Anew = A(ix,:)
Anew = 3×2
1 100 2 200 5 500
.

Categorías

Más información sobre Multidimensional Arrays en Help Center y File Exchange.

Productos


Versión

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by