How to make a structure unique?
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Md. Asadujjaman
le 25 Juin 2020
Commenté : Md. Asadujjaman
le 25 Juin 2020
emp.x=[];
emp.info=[];
emp.fit=[];
pop=repmat(emp,1,1);
pop(1).x=[1 2 3 4];
pop(2).x=[3 2 1 4];
pop(3).x=[1 2 3 4];
pop(4).x=[2 1 3 4];
How to make the above structure (pop) unique?
The result would be like the following figure.

4 commentaires
Walter Roberson
le 25 Juin 2020
X values are not a row vector.
Row vectors are the same length.
Which row vectors are the same length as each other if they are not the X values? (We know they are not the X values because you said that the X values are not row vectors.)
Réponse acceptée
Rasul Khan
le 25 Juin 2020
Modifié(e) : Rasul Khan
le 25 Juin 2020
You can achieve it using this script.
m = [];
for i = 1 : numel(pop)
m = [m ; pop(i).x];
end
[~ , ia , ~] = unique(m , 'rows');
pop = pop(ia);
2 commentaires
Walter Roberson
le 25 Juin 2020
m = vertcat(pop.x);
[~ , ia , ~] = unique(m , 'rows');
pop = pop(ia);
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!