delete duplicated rows, (with saving some data)
조회 수: 1 (최근 30일)
이전 댓글 표시
i have this table (size:8*2): ( 1st column has numbers some of them is duplicated)
434846 x
434846 y
434850 f
434854 s
434859 A
434859 B
434859 C
434862 N
i want to delete the duplicated row but save the (2th column & or 3rd) in the origin number to form a table (size:5*3) like this:
434846 x y
434850 f
434854 s
434859 A B C
434862 N
how i can do this?
댓글 수: 0
채택된 답변
Star Strider
2015년 5월 16일
편집: Star Strider
2015년 5월 16일
This works:
A = {434846 'x'
434846 'y'
434850 'f'
434854 's'
434859 'A'
434859 'B'
434859 'C'
434862 'N'};
%
A1 = cell2mat(A(:,1));
[Au,ia,ic] = unique(A1);
for k1 = 1:size(Au,1)
A2{k1,:} = {Au(k1) A(k1==ic,2)};
end
EDIT — Print loop for ‘A2’:
for k1 = 1:size(A2,1)
fprintf(1, ['\n%d\t' repmat('%s ',1, length(A2{k1}{2}))], A2{k1}{1}, char(A2{k1}{2}))
end
fprintf(1, '\n')
produces:
434846 xy
434850 f
434854 s
434859 ABC
434862 N
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Tables에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!