How to make a structure unique?
조회 수: 9 (최근 30일)
이전 댓글 표시
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
Walter Roberson
2020년 6월 25일
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.)
채택된 답변
Rasul Khan
2020년 6월 25일
편집: Rasul Khan
2020년 6월 25일
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
Walter Roberson
2020년 6월 25일
m = vertcat(pop.x);
[~ , ia , ~] = unique(m , 'rows');
pop = pop(ia);
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
