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 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!