Seeking Help: Deleting Redundancy in a Structure Array

Hello,
I hope this message finds you well. I have a question regarding comparing elements in a structure array in MATLAB. Below is the code snippet I am working with, and I'm looking for guidance on identifying and removing redundancy
clear
clc
a(1).pos=[1,7,1];
a(2).pos=[1,7,1];
a(3).pos=[6,5,5];
a(4).pos=[1,4,3];
a(5).pos=[2,2,2];
In this example, I want to find and delete redundant elements within the structure array. Specifically, if I know that a(1).pos and a(2).pos have the same elements, I want to retain only one instance.
I am seeking assistance on how to code this efficiently. Any insights or code snippets would be greatly appreciated. Thank you in advance for your help!

2 comentarios

Can we assume
a(i).pos
are 1 x 3 numercal array or they can be something else more generic?
Wei Wen
Wei Wen el 24 de En. de 2024
Editada: Wei Wen el 24 de En. de 2024
hi, it is in numerical array.
Here is a sample of the actual value from the main code. I would like to compare the value from the pop.Position. If there is redundancy, i would like to eliminate it. Are there any ways to do that?
There is no redundancy in the figure below.

Iniciar sesión para comentar.

 Respuesta aceptada

a(1).pos=[1,7,1];
a(2).pos=[1,7,1];
a(3).pos=[6,5,5];
a(4).pos=[1,4,3];
a(5).pos=[2,2,2];
P = cat(1, a.pos);
[~, I] = unique(P, 'rows');
a = a(sort(I));
a.pos
ans = 1×3
1 7 1
ans = 1×3
6 5 5
ans = 1×3
1 4 3
ans = 1×3
2 2 2

2 comentarios

Thank you !
@Wei Wen Can you please accept the answer?

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 24 de En. de 2024

Comentada:

el 24 de En. de 2024

Community Treasure Hunt

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

Start Hunting!

Translated by