choosing unique elements in the order that they appear in a column of a cell vector
조회 수: 1 (최근 30일)
이전 댓글 표시
Dear all,
I have the following cell matrix
Out={
'MN' 'AER_KL1' 'Bdrerv_1'
'MN' 'AER_KL1' 'Bdrerv_1'
'MN' 'AER_KL1' 'Bdrerv_1'
'MN' 'AER_KL1' 'Bdrerv_1'
'MN' 'AER_KL1' 'ksitre +2er'
'MN' 'AER_KL1' 'ksitre +2er'
'MN' 'AER_KL1' 'ksitre +2er'
'MN' 'AER_KL1' 'ksitre +2er'
'MN' 'AER_KL1' 'ksitre +2er'
'MN' 'AER_KL1' 'ksitre +2er'
'MN' 'AER_KL1' 'ksitre +2er'
'MN' 'AER_KL1' 'eorftr>2'
'MN' 'AER_KL1' 'eorftr>2'
'MN' '100_pr' 'se 34'
'MN' '100_pr' 'se 34'
'MN' '100_pr' 'se 34'
'MN' '100_pr' 'se 34'
'MN' '100_pr' 'se 34'
'MN' '100_pr' 'se 34'
'MN' '100_pr' 'se 34'
'MN' '100_pr' 'fjgitow f12'
'MN' '100_pr' 'fjgitow f12'
'MN' '100_pr' 'fjgitow f12'
'MN' '100_pr' 'fjgitow f12'
'MN' '100_pr' 'fjgitow f12'
'MN' '100_pr' '344 edd' }
I want to simplify this matrix so as to have the following specific structure
'MN' 'AER_KL1' 'Bdrerv_1'
'MN' 'AER_KL1' 'ksitre +2er'
'MN' 'AER_KL1' 'eorftr>2'
'MN' '100_pr' 'se 34'
'MN' '100_pr' 'fjgitow f12'
'MN' '100_pr' '344 edd' }
As you can see I want to select the unique elements from the last column in the order that appear in “out” and construct the above simplified matrix.
IS there any quick/efficient code for doing this?
The above matrix is an example
My original data set is of dimension 25000 by 4. So a general code for doing this is greatly appreciated
댓글 수: 0
채택된 답변
Jan
2013년 1월 30일
If you have a modern version of Matlab, the unique command can be controlled by teh 'first' flag to reply the first index.
댓글 수: 4
Sean de Wolski
2013년 1월 30일
Well 'first' returns the first index, not necessarily 'stable' order; consider:
>> [uv,idx] = unique([3;2;3;1],'first')
추가 답변 (1개)
Thorsten
2013년 1월 30일
편집: Thorsten
2013년 1월 30일
You can to it "by feet"
unique_rows = 1;
for i = 2:size(Out, 1)
equals_row = 0;
for j = 1:numel(unique_rows)
equal_row = strcmp(Out{i, 3}, Out{unique_rows(j), 3});
if equal_row, break, end
end
if ~equal_row, unique_rows(end+1) = i, end
end
Out_simple = Out(unique_rows, :)
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Other Formats에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!